Управление областью действия TagHelper - PullRequest
0 голосов
/ 07 апреля 2020

Чтение и изучение TagHelpers из книги, поэтому я написал и использовал TagHelper. Написав это:

public class ButtonTagHelper: TagHelper
{
    public string BsButtonColor { get; set; }

    public override void Process(TagHelperContext context, TagHelperOutput output)
    {
        output.Attributes.SetAttribute("class", $"btn btn-{BsButtonColor}");
    }
}

и затем используя его в Razor, вот так:

<button bs-button-color="danger" type="submit">ADD</button>

ОК. Я многому научился. Теперь в следующем разделе об областях видимости говорится: enter image description here

, что смущает меня, и я этого не понимаю. ПОЧЕМУ? В моем коде выше я не сказал применить его ко всем кнопкам. Откуда это взялось? Насколько я понимаю, он смотрит на bs-button-color, поэтому, если в другом объявлении кнопки в Razor этого нет, с чем это может быть связано?

1 Ответ

0 голосов
/ 08 апреля 2020

ОК вернулся к началу главы и прочитал ее снова. Вот соглашение, которое я пропустил, читая его в первом раунде:

The NAME of the TagHelper combines the name of the element it transforms followed by the word TagHelper.  

, и в моем примере класс называется ButtonTagHelper, так что это означает, что он хочет применить его к BUTTONS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...