【问题标题】:Trying to get Telerik ScriptRegistrar to load Telerik scripts and custom script试图让 Telerik ScriptRegistrar 加载 Telerik 脚本和自定义脚本
【发布时间】:2011-08-18 06:01:39
【问题描述】:

我在我的 ASP.NET MVC 3 razor 应用程序中使用最新版本的 Telerik MVC 扩展。我也下载了最新版的jQu​​ery。

关于 Visual Studio 的默认设置,我将 jQuery 文件放在不同的目录中。之所以会这样,是因为我下载了最新版的jQu​​ery jquery-1.6.2.min.js。我的 Telerik MVC 内容和脚本目录位于不同的目录中。至于我所看到的 Telerik 脚本需要先加载 jQuery 文件。我已经删除了 ASP.NET MVC 应用程序默认附带的内容和脚本目录。

Telerik 脚本目录:

~/Assets/telerikaspnetmvc/2011.2.712/Scripts/

我的 jQuery 目录:

~/Assets/JavaScripts/jQuery/

我将 ScriptRegistrar 更改为以下:

@(Html.Telerik().ScriptRegistrar()
   .DefaultGroup(group => group
      .DefaultPath("~/Assets/telerikaspnetmvc/2011.2.712/Scripts/")
      .Compress(true)
   )
   .Scripts(scripts => scripts
      .AddGroup("JavaScriptAssetLocation", group => group
         .DefaultPath("~/Assets/JavaScripts/jQuery/")
         .Add("jquery-1.6.2.min.js")
         .Compress(true)
      )
   )
   .jQuery(false)
)

这给了我一个错误。我交换了 2 以便它可以首先读取 jQuery,如下所示,但它似乎仍然首先加载默认的 Telerik JavaScript 文件并导致错误。这是修改后的代码:

@(Html.Telerik().ScriptRegistrar()
   .Scripts(scripts => scripts
      .AddGroup("JavaScriptAssetLocation", group => group
         .DefaultPath("~/Assets/JavaScripts/jQuery/")
         .Add("jquery-1.6.2.min.js")
         .Compress(true)
      )
   )
   .DefaultGroup(group => group
      .DefaultPath("~/Assets/telerikaspnetmvc/2011.2.712/Scripts/")
      .Compress(true)
   )
   .jQuery(false)
)

我在这里做错了什么?请提供代码示例,说明必须如何完成。

只是另一个问题。我需要为每个组指定 Compress(true) 还是一次就够了? jQuery(false) 需要在哪里指定?只有在 DefaultGroup 之后?还是在任何地方?

【问题讨论】:

    标签: javascript jquery asp.net-mvc-3 telerik telerik-mvc


    【解决方案1】:

    我认为这里最简单的做法如下:

    @(Html.Telerik().ScriptRegistrar().DefaultGroup(group => group
      .DefaultPath("~/Assets/telerikaspnetmvc/2011.2.712/Scripts/").Combined(true)
      .Compress(true)).jQuery(false))
    

    对不起,如果这看起来有点压缩 - 代码 sn-p 样式拒绝与任何其他设置一起应用。无论如何,一旦你完成了在页面的头部注册以下内容:

    <script src="@Url.Content("~/Assets/JavaScripts/jQuery/jquery-1.6.2.min.js")" type="text/javascript"></script>
    

    这将正确链接到您自己的 jQuery 版本,同时确保更改默认组的 DefaultPath。

    就在这里使用压缩而言,我认为它不会起到太大作用。这真的只适用于当您在一个组中使用 .Combined(true) 时,该组具有正在添加的 几个 脚本(例如 Telerik 组件的默认组)。如果您只是使用单个文件(jquery-1.6.2.min.js),则真的没有必要。所以,只要你想压缩一个组合组,只要确保你使用 .Combined(true) (我必须在上面添加它)。这需要为每个组添加。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-26
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多