【问题标题】:Kendo UI Scripts are not bundling in MVC5Kendo UI 脚本未捆绑在 MVC5 中
【发布时间】:2016-09-06 02:45:03
【问题描述】:

我正在为 ASP.NET MVC 使用剑道 UI。我已经捆绑了所有的剑道 JS 文件。在本地它工作正常。但是当我将应用程序部署到 Web 服务器时,然后当我浏览页面时,我注意到剑道 javascripts 没有捆绑,因此我收到错误

未捕获的类型错误:jQuery(...).kendoDropDownList 不是函数

这就是我打包文件的方式

这就是我在 _Layout.cshtml 中引用它们的方式

        @Styles.Render("~/Content/bootstrap/css")
        @Styles.Render("~/Content/kendo-bootstrap/css")
        @Styles.Render("~/Content/css")
        <link rel="stylesheet" href="~/Content/bootstrap-multiselect.css" type="text/css" />


        @Scripts.Render("~/bundles/jquery")
        @Scripts.Render("~/bundles/kendo/2016.1.412")
        @Scripts.Render("~/bundles/bootstrap")
        @Scripts.Render("~/bundles/modernizr")
        <script type="text/javascript" src="~/Scripts/bootstrap-multiselect.js"></script>

这是我在浏览器的 F12 中看到的 -> 源选项卡

请注意,jQuery、Modernizer 和 Bootstrap 是捆绑在一起的,但不是 kendo。为什么?

【问题讨论】:

  • 文件是否也存在于您正在部署应用程序的服务器上?可能是文件夹和后续文件设置为“复制到输出目录”的“不复制”。
  • 服务器上确实存在文件
  • 我注意到在您包含的 kendo.timezones.min.js 文件的末尾似乎有一个额外的s。 (可能只是想指出它以防万一这是问题) - 在本地,您可能正在使用以前工作的缓存版本
  • 很好地删除了额外的s 但是没有运气:(
  • 还有一件事。我正在使用 Jenkins + MSBuild + Publish 选项。所以我基本上已经创建了使用“文件系统”作为发布方法的发布文件。然后我使用 MSBuild 构建和发布应用程序。

标签: javascript kendo-ui asp.net-mvc-5 kendo-asp.net-mvc


【解决方案1】:

所以它终于开始工作了..我关注了 Telerik 的文章 here 那篇文章与我正在做的唯一区别 是:

项目中的JS文件位置:我的是~/Scripts/kendo/2016.1.412,建议~/Sripts/kendo
项目中的 CSS 文件位置:我的是 ~/Content/kendo/2016.1.412,建议使用 ~/Content/kendo

也在 BundleConfig.cs 文件中
JS Bundle 脚本名称:我的是~/bundles/kendo/2016.1.412,建议使用~/bundles/kendo
CSS Bundle Script Name: 我的是~/Content/kendo-bootstrap/css 建议~/Content/kendo/css

我不知道为什么这会有所不同,因为最终我在 layout.cshtml 中引用了正确的包名称

但无论如何上述更改对我有用

【讨论】:

  • 你应该接受这个作为你的答案,因为这就是你解决问题的方式。
猜你喜欢
  • 2013-06-09
  • 1970-01-01
  • 2012-12-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-19
  • 1970-01-01
相关资源
最近更新 更多