代码之家  ›  专栏  ›  技术社区  ›  iLemming

具有附加属性的ScriptBundle

  •  4
  • iLemming  · 技术社区  · 12 年前
    public class BundleConfig
    {
        // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725
        public static void RegisterBundles(BundleCollection bundles)
        {
            bundles.Add(new ScriptBundle("~/bundles/require").Include(
                            "~/Scripts/require.js"));
           ....
    

    以及在_Layout.cshtml中

    @Scripts.Render("~/bundles/require")
    

    它渲染为(带有 EnableOptimizations = false ):

    <script src="/Scripts/require.js"></script>
    

    但我想添加一个属性

    <script src="/Scripts/require.js" data-main="/Scripts/main"></script>
    

    我怎么能这么做?

    2 回复  |  直到 12 年前
        1
  •  2
  •   omikad    10 年前

    我通过配置没有数据主属性的requirejs解决了类似的问题。所以,一开始我有以下代码:

    <script src="app/rconfig.js"></script>
    <script src="plugin/requirejs/require.js" data-main="app/main.js"></script>
    

    接下来,让我们去掉数据主属性:

    <script src="app/rconfig.js"></script>
    <script src="plugin/requirejs/require.js"></script>
    <script>
        require.config({
            baseUrl: "app"
        });
        require(['app/main.js']);
    </script>
    

    接下来,我将最后一个“脚本”内容放入文件中:

    <script src="app/rconfig.js"></script>
    <script src="plugin/requirejs/require.js"></script>
    <script src="app/rdatamain.js"></script>
    

    最后,我把这三个文件放在一起

        2
  •  1
  •   David Gardiner    10 年前

    如果您不喜欢RenderFormat,也可以在ScriptsHelper上全局更改DefaultTagFormat,但该属性现在将显示在您调用Scripts的所有位置。Render