Twitter Bootstrap js文件加载但不与requirejs一起工作

时间:2013-11-21 20:07:56

标签: javascript jquery requirejs twitter-bootstrap-3

我有一个使用Twitter Bootstrap的Laravel应用程序。 一切都很好,然后我实现了Aloha WYSIWYG编辑器 - http://www.aloha-editor.org/使用RequireJS。

我按以下顺序加载JS文件:

  1. 的jQuery
  2. BootstrapJS文件
  3. RequireJS
  4. AlohaJS
  5. 按照这个顺序,Aloha会正常工作,但是$(。。modal函数)不起作用(TypeError不是函数......)我可以看到bootstrap.min.js在Firebug中加载了。

    如果我删除RequireJS,则引导函数可以正常工作。

    我看过doco,但是我不明白为什么即使文件正确加载我的Bootstrap功能也不起作用?我是否必须在RequireJS中加载它?

    在RequireJS doco中,你应该加载RequireJS:<script data-main="/assets/main" src="/assets/lib/require.js"></script>但是Aloha告诉我们实现的方式没有任何data-main属性,那么main.js文件在哪里模块正在加载?

    谢谢

1 个答案:

答案 0 :(得分:2)

请尝试使用以下代码:

requirejs.config({
    appDir: ".",
    baseUrl: "js",
    paths: { 
        'jquery': ['//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min', 'libs/jquery-min'],
        'bootstrap': ['//netdna.bootstrapcdn.com/bootstrap/3.0.2/js/bootstrap.min.', 'libs/bootstrap-min']
    },
    shim: {
        'bootstrap' : ['jquery']
    }
});

require(['jquery', 'bootstrap'], function($) {
    console.log("Loaded :)");    
    return {};
});

查看更多Loading Bootstrap from CDN with Require.js