gpt4 book ai didi

javascript - 主干+RequireJS "define is not defined"

转载 作者:行者123 更新时间:2023-12-03 11:23:48 30 4
gpt4 key购买 nike

我有一个相当大的项目,我试图将所有 JS 文件连接到一个文件中。我已经能够做到这一点,但我在实际将这两个文件实现到代码中时遇到了麻烦。

我的 Gruntfile 有一个执行串联的任务:

requirejs: {
compile: {
options: {
baseUrl: "<%= yeoman.app %>",
mainConfigFile: "<%= yeoman.app %>/config.js",
include: ["config"],
out: "<%= yeoman.app %>/dist/main.js"
}
}
},

同样,这工作得很好。我的 config.js 包含项目中使用的所有库、模型、帮助器、集合和 View :

   require.config({
paths: {
// path configuration assumes .js suffix

// Libraries
'jquery': 'js/libs/jquery-1.8.2.min',
// custom version of jQM, see comments section in library for custom change log
'jQM': 'js/libs/jquery.mobile-1.2.0-CUSTOM',
//'jQUI': 'js/libs/jquery-ui-1.8.24.dev.min',
'Underscore': 'js/libs/underscore',
'JSON2': 'js/libs/json2',
'Backbone': 'js/libs/backbone',
etc...
},
shim: {
'jQMConfig': {
//deps: ['jQUI'] // use jQUI as dependency if jQUI is required. see https://github.com/jquery/jquery-mobile/issues/5119
deps: ['jquery']
},
'jQM': {
deps: ['jQMConfig']
},
etc...
});
require(['js/router']);

最后,在我的 HTML 代码中,我包含了这两个脚本:

<script type="text/javascript" src="dist/main.js"></script>
<script data-main="config" src="js/libs/require-2.1.15.min.js"></script>

这是我在控制台中收到错误“define is not Define”的地方,并且 js/文件夹中的所有文件仍在被调用。请为我指明正确的方向。

最佳答案

您必须首先包含 require.js 文件,同时您可以指定 data-main 作为您的主文件。

在 html 中包含脚本,如下所示:

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

参见patterns for seperating config from main module ,了解更多详情。

关于javascript - 主干+RequireJS "define is not defined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27002466/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com