изменить классы для элемента - PullRequest
1 голос
/ 07 апреля 2020

Я видел этот пост , ответы примерно от года go, и я надеюсь, что есть лучший способ сделать это сейчас.

Второй ответ от user11623871 , кажется, лучший способ сделать это, что я мог найти, но когда к элементу применено несколько разных имен классов, будет сложно убедиться, что все правильные применены.

Есть ли что-то в блазоре, как в JS, где я могу просто выбрать элемент, а затем удалить или добавить класс, когда это необходимо?

Как это будет выглядеть просто js:

var element = document.getElementById("myDIV");
element.classList.add("mystyle");

Ответы [ 2 ]

1 голос
/ 07 апреля 2020

Как то так?

<div class="@string.Join(" ", CSSClasses)"></div>

<button type="button" @onclick="Add">ADD</button>
<button type="button" @onclick="Remove">REMOVE</button>

@code {

    private List<string> CSSClasses = new List<string>();

    void Add()
    {
        CSSClasses.Add("Class1");
        CSSClasses.Add("Class2");
    }


    void Remove()
    {
        CSSClasses.RemoveAll(x => x == "Class1");
    }
}
0 голосов
/ 07 апреля 2020

Оформить заказ BlazorStyled by Chanan:

https://github.com/chanan/BlazorStyled

Мне так понравилось, что я сделал видео об этом:

https://youtu.be/frtetHgfdIo

Позволяет динамически изменять CSS свойства.

...