requirejs可以用于此吗?
我有一个简单的索引页面,它使用了一些js文件,包括来自CDN的jquery和下划线。 为了学习,我想设置requirejs来管理脚本 文件夹结构:requirejs可以用于此吗?,requirejs,Requirejs,我有一个简单的索引页面,它使用了一些js文件,包括来自CDN的jquery和下划线。 为了学习,我想设置requirejs来管理脚本 文件夹结构: exampleApp -js -foo.js -main.js -require.js -index.html 索引,注意foo是foo.js中的一个函数: <script data-main="js/main" src="js/requirejs-2.1.9.js"></script&
exampleApp
-js
-foo.js
-main.js
-require.js
-index.html
索引,注意foo是foo.js中的一个函数:
<script data-main="js/main" src="js/requirejs-2.1.9.js"></script>
<body>
<button onclick='foo()'>Click me</button>
</body>
在我的foo.js中,我使用jquery,使用$,使用下划线,因此如果可能的话,我希望维护这些符号。标题中问题的答案是肯定的。是不是有什么特别的东西给你带来了问题?请注意,您必须传递一个字符串数组作为require.thx的第一个参数,我添加了字符串键入,并添加了垫片。我没有看到错误,只是索引中的按钮不起作用,onclick…我只是让foo将字符串输出到控制台。它在没有requirejs的情况下工作,所以我尝试让它与requirejs一起工作。您的代码看起来不错。显示foo.js代码。问题更可能存在。当从模块foo通过RequireJS函数foo加载时,全局对象(即window.foo)中未显示foo,您的控制台中可能会出现JS错误类似的问题:。foo.js也可能有问题;你是说它在没有requirejs的情况下工作JS:它甚至是AMD模块吗?它是从定义开始的吗?
requirejs.config({
baseUrl: 'js',
paths: {
jquery : '//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js',
underscore : '//cdn.jsdelivr.net/underscorejs/1.5.2/underscore-min.js',
foo : 'foo'
},
shim: {
jquery: {
exports: '$'
},
underscore: {
exports: '_'
}
}
});
requirejs(['jquery', 'underscore', 'foo'], function($, _, foo){
});