Использование JS-интеропа
Add, review, or fix JavaScript interop in Blazor components. USE FOR: calling JavaScript from Blazor, calling .NET from JavaScript, collocated .razor.js modules, IJSRuntime, IJSObjectReference lifecycle, DotNetObjectReference, ElementReference, timing rules for when JS is available, IAsyncDisposable disposal of JS references, server-side JS interop safety. DO NOT USE FOR: general Blazor component
Что делает навык
Навык обеспечивает корректное взаимодействие между Blazor и JavaScript, включая вызовы JS из .NET и .NET из JS, а также управление жизненным циклом JS-объектов. Он решает задачи интеграции клиентских скриптов с компонентами Blazor, обеспечивая безопасность и правильную очистку ресурсов.
Когда применять
- Вызов JavaScript-функций из кода Blazor-компонента
- Вызов методов .NET из JavaScript с использованием DotNetObjectReference
- Использование совмещённых модулей (.razor.js) для инкапсуляции JS-логики
- Освобождение ресурсов JS через реализацию IAsyncDisposable
- Работа с ElementReference для доступа к DOM-элементам
Как работает
- Создайте файл .razor.js рядом с компонентом .razor и экспортируйте необходимые функции.
- Импортируйте JS-модуль в компонент, используя правильные пути (относительные для того же проекта или _content/ для RCL).
- Выполняйте все вызовы JS Interop только в OnAfterRenderAsync или обработчиках событий, избегая OnInitialized и конструкторов.
- Передавайте DotNetObjectReference в JS-функции для обратных вызовов .NET.
- Реализуйте IJSObjectReference и IAsyncDisposable для корректного освобождения ссылок на JS-объекты.
- Используйте IJSRuntime для асинхронных вызовов JS-методов.
Примеры запросов агенту
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
SKILL.md к навыкам ассистентаНавык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.