Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用带有杏仁的grunt requirejs导致“定义未定义”大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的grunt.js文件中,我有

requirejs: {
    dist: {
        options: {
            almond: true,wrap: true,modules: [{name: 'main'}],mainConfigFile: "src/js/main.js",baseUrl: "src/js",dir: "tmp/js",inlineText: true,preserveLicenseComments: false
        }
    }
}

运行grunt requirejs:dist使用一些缩小的文件填充tmp / js目录 – 其中包括一个大的main.js文件(所有内容似乎都按预期捆绑在此文件中) – 但是当我想要包含此文件

<script type="text/javascript" src="tmp/main.js"></script>

它导致“未捕获的ReferenceError:未定义定义”

使用杏仁的意图是我不需要加载require.js文件来加载我的opimized文件 – 任何想法如何让它工作?

脚注:我已经设法这样做了,除了之前已经编译了@L_649_5@main-built.js文件,但是这似乎不再是这种情况了(更新… -.-)

解决方法

所以我尝试使用以下文件设置一个空目录&文件

/grunt.js
/src/js/main.js
/tmp/js

这是我的grunt.js:

@H_797_7@module.exports = function(grunt) { grunt.loadNpmTasks("grunt-requirejs"); grunt.initConfig({ requirejs: { dist: { options: { almond: true,preserveLicenseComments: false } } } }); grunt.registerTask("default","requirejs"); };

这是我的main.js:

define(function() {
    console.log('hi');
});

我在控制台中运行了这些命令:

npm install grunt
npm install requirejs
npm install grunt-requirejs
grunt --gruntfile grunt.js

Grunt输出

Running "requirejs:dist" (requirejs) task
>> requireJS optimizer finished
Uncompressed size: 14234 bytes.
Compressed size: 1265 bytes gzipped. (2633 bytes minified)

/tmp/js/main.js中的结果文件确实引用了杏仁.它没有提到define函数,因为js已被最小化.我对定义的调用(被重写为n(.

我怀疑你可能在调用define的最小化文件之外有代码.

此外,在我的其他项目中,我的mainConfigFile仅作为配置文件引用,而不是作为模块加载.

大佬总结

以上是大佬教程为你收集整理的使用带有杏仁的grunt requirejs导致“定义未定义”全部内容,希望文章能够帮你解决使用带有杏仁的grunt requirejs导致“定义未定义”所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。