2013-03-20 2 views
4
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.cshtmlScriptBundle с дополнительными атрибутами

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

это делает в (с EnableOptimizations = false):

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

, но я хочу, чтобы добавить атрибут

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

как я мог это сделать?

+0

Я слышал альфа обновление некоторого MVC добавляет метод RenderFormat, но я предпочел бы найти иначе, если есть – Agzam

ответ

2

Я решил подобную проблему путем настройки requirejs без атрибут data-main. Итак, сначала я имел следующий код:

<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> 

на финише, я поместил эти три файла в пачку

1

Если вам не нравится RenderFormat, вы можете изменить DefaultTagFormat глобально на ScriptsHelper тоже, но этот атрибут теперь будет отображаться везде называется Scripts.Render

Смежные вопросы