【问题标题】:Why wasn't my javascript class visible inside the .cshtml file?为什么我的 JavaScript 类在 .cshtml 文件中不可见?
【发布时间】:2020-09-12 04:51:22
【问题描述】:

我创建了一个新的 .net-core 项目,然后我添加了一个 bundleconfig.json 文件用于捆绑和缩小,我还添加了一个 package.json 文件用于处理依赖项。

我将我的包包含在共享的 _Layout.cshtml 文件中,但随后我尝试在我的 Index.html 文件中初始化我的类。

所以在我的 _Layout.cshtml 文件中,我有以下几行:

<script src="~/lib/jquery/dist/jquery.min.js"></script>
<script src="~/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="~/js/site.min.js"></script>
@RenderSection("Scripts", required: false)

site.min.js 包含我的课程(Swiper)。

在我的 Index.cshtml 中,我有以下几行:

<script>
    var swiper = new Swiper('.swiper-container', {
        navigation: {
            nextEl: '.swiper-button-next',
            prevEl: '.swiper-button-prev',
        },
    });
</script>

此时 Swiper 在没有明确包含的情况下未定义,但它存在于 site.min.js 中。在我将此标记的内容移动到一个 javascript 文件中后,该文件也是我的 site.min.js 的一部分,它终于开始工作了。

脚本标签有没有我不知道的范围?

【问题讨论】:

    标签: javascript asp.net-core .net-core


    【解决方案1】:

    您需要将它们包装在 Section 中,如下所示:

    @section Scripts {
    <script>
        var swiper = new Swiper('.swiper-container', {
            navigation: {
                nextEl: '.swiper-button-next',
                prevEl: '.swiper-button-prev',
            },
        });
    </script>
    }
    

    “脚本”名称可以是您想要的任何名称,只要它在布局中相同即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-28
      • 2014-11-24
      • 2018-06-02
      • 2017-06-08
      • 2015-10-02
      相关资源
      最近更新 更多