Как я могу случайным образом добавлять атрибуты CSS к компоненту Blazor из родительского слоя, как это сделал Vue?CSS

Разбираемся в CSS
Ответить
Anonymous
 Как я могу случайным образом добавлять атрибуты CSS к компоненту Blazor из родительского слоя, как это сделал Vue?

Сообщение Anonymous »

Поскольку я хочу разработать несколько повторно используемых компонентов Blazor, я надеюсь, что у них будет такая функция:
Предположим, у меня есть собственный компонент «MyComponent», я мог бы добавить любой атрибут CSS к нему, когда я его использую:

Код: Выделить всё

some child content...

Находясь в MyComponent, я обычно исправляю некоторые общие атрибуты CSS в верхнем вапере следующим образом:

Код: Выделить всё

some child content...

Это означает, что мне нужно объединить две части атрибутов CSS вместе, чтобы окончательный HTML-код выглядел следующим образом:

Код: Выделить всё

some child content...

Думаю, мне нужен такой шаблон:

Код: Выделить всё

some child content...

@functions
{

[Parameter]
private string Class { get; set; } = "";

private string fixedClass = "fixed-css1 fixed-css2";

private string Classes
{
get
{
return $"{fixedClass} {Class}";
}
}
}
Чтобы уменьшить избыточный код, я мог бы создать базовый класс со свойством защищенного класса и каждым присущим ему компонентом, но я все равно не могу избежать написания одного и того же комбинированного кода в каждом из них. . Я надеюсь, что есть какое-то решение для добавления этих пользовательских CSS непосредственно в мой базовый класс. Думаю, я мог бы добиться этого, переопределив метод BuildRenderTree из ComponentBase clss:

Код: Выделить всё

protected override void BuildRenderTree(RenderTreeBuilder builder)
{
base.BuildRenderTree(builder);
}
Но, к сожалению, я испробовал все способы сборки вручную, но понятия не имею, как это сделать. Я не знаю, как получить элементы моего HTML (например, «div») и добавить к ним дополнительные атрибуты CSS.
Все это касается реализации функции как Vue легко мог бы это сделать. В коде Vue мы, безусловно, можем добавить любой атрибут к компоненту и передать его первому элементу компонента.
Может ли кто-нибудь помочь мне достичь этой цели или дать мне какое-нибудь предложение?< /п>

Подробнее здесь: https://stackoverflow.com/questions/568 ... layer-as-v
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «CSS»