Sera-t-il possible de manipuler directement le DOM à partir du code C# sans invoquer de fonctions javascript ?
J'ai pensé à des bases comme ça
var elem = document.getElementById("123");
elem.AddOrUpdateStyle("background-color", "red");
elem.AddOrUpdateStyle("height", "150px");
elem.Remove("height");
var boxes = document.getElementsByClassName("box");
foreach (var box in boxes)
{
if (box.Classes.Contains("hidden"))
{
box.AddOrUpdateStyle("display", "none");
continue;
}
box.Value = "";
box.SetAttribute("placeholder", "Type here...");
}
Est-ce même réalisable ?
La manipulation DOM n'est actuellement pas prise en charge par l'assemblage Web (https://github.com/WebAssembly/proposals/issues/16 , https://github.com/WebAssembly/design/blob/master/Web.md), elle a donc gagné ne sera bientôt pas pris en charge par mono wasm. Vous ne pouvez le faire qu'en utilisant l'état actuel de Blazor : composant personnalisé et interopérabilité JS.
Je pense que ce sujet devrait être rouvert. Les composants Razor devraient avoir cette capacité, même si cela est fait avec l'interopérabilité JS sous le capot. ElementRef doit être étendu pour prendre en charge la plupart des fonctions JS de base.
L'accès direct au DOM sera la raison pour laquelle j'essayerai Blazor.
Ceci est obligatoire pour la percée de Blazor.
Commentaire le plus utile
Je pense que ce sujet devrait être rouvert. Les composants Razor devraient avoir cette capacité, même si cela est fait avec l'interopérabilité JS sous le capot. ElementRef doit être étendu pour prendre en charge la plupart des fonctions JS de base.