Я пытаюсь освоить ClientDependency Framework.
https://github.com/Shazwazza/ClientDependency
Я использую его на веб-сайте Umbraco.
У меня проблема с каким-то нестандартным JavaScript (не в файле), который я хочу запустить.
Я хочу запустить функцию (которая находится в "functions.js"), но с другим параметром на странице.
Итак, я добавляю в свой шаблон следующее:
Html.RequireJs("~/scripts/functions.js", 1);
И на моей главной странице перед -tag я добавил:
@Html.RenderJsHere()
Но где мне разместить мой вызов функции? Я не могу просто добавить его в свой шаблон, потому что "functions.js" еще не загружен (он находится внизу моей главной страницы).
Я думал о создании js-файла для каждого вызова и добавлении их в Html.RequireJs (...), но это не лучшее решение.
Есть ли способ добавить inline-скрипт в список "JS-to-render"?
редактировать:
Я просто пытался заставить его работать, используя RenderSection (), но, похоже, это не работает, когда раздел определен в макросе?
редактировать:
У меня нет кода здесь в данный момент, я набираю это, но идея такова:
functions.js
function WriteToConsole(input) {
console.log('Log', input);
}
* 1031 template1.cshtml ** * 1032
@{Html.RequireJs("functions.js");}
<script>
WriteToConsole("This is from template 1");
</script>
template2.cshtml
@{Html.RequireJs("functions.js");}
<script>
WriteToConsole("This is from template 2");
</script>
master.cshtml
<body>
@RenderBody()
@Html.RenderJsHere()
</body>
Просто чтобы дать представление о том, что я пытаюсь сделать.
Как вы можете себе представить, часть <script>
в моем шаблоне теперь вызывается до включения functions.js
. И это приводит к ошибке.
Или я все это неправильно делаю?