Aspnetcore: [Blazor] معالجة DOM مباشرة باستخدام C #

تم إنشاؤها على ٢٢ يناير ٢٠١٩  ·  3تعليقات  ·  مصدر: dotnet/aspnetcore

هل طلب الميزة الخاص بك متعلق بمشكلة؟ يرجى الوصف.

هل سيكون من الممكن معالجة DOM من كود C # مباشرة دون استدعاء وظائف جافا سكريبت؟

فكرت في الأساسيات من هذا القبيل

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...");
}

هل هو قابل للتحقيق حتى؟

area-blazor

التعليق الأكثر فائدة

أعتقد أنه يجب إعادة فتح هذه المشكلة. يجب أن تتمتع مكونات ماكينة الحلاقة بهذه القدرة ، حتى لو تم إجراؤها باستخدام JS المتداخل أسفل الغطاء. يجب تمديد ElementRef لدعم معظم وظائف JS الأساسية.

ال 3 كومينتر

لا يدعم تجميع الويب حاليًا معالجة DOM (https://github.com/WebAssembly/proposals/issues/16 ، https://github.com/WebAssembly/design/blob/master/Web.md) ، لذلك فاز سيتم دعمه بواسطة mono wasm قريبًا. يمكنك القيام بذلك فقط باستخدام الحالة الحالية لـ Blazor: المكون المخصص و JS interop.

أعتقد أنه يجب إعادة فتح هذه المشكلة. يجب أن تتمتع مكونات ماكينة الحلاقة بهذه القدرة ، حتى لو تم إجراؤها باستخدام JS المتداخل أسفل الغطاء. يجب تمديد ElementRef لدعم معظم وظائف JS الأساسية.

سيكون الوصول المباشر إلى DOM هو السبب بالنسبة لي لتجربة Blazor.
هذا أمر إلزامي للاستراحة من Blazor.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات