如何在构建中使用require.js并将grunt任务编码? (自耕农配置)

时间:2014-07-09 21:56:20

标签: requirejs gruntjs

层次:

  • 应用
    • .tmp //临时文件
    • app //源文件
    • dist // dist files

所以如果我把devcode:build之前放在requirejs:

  • 处理“app / scripts”中的文件并保存到“.tmp / scripts”
  • 将指向Requirejs加载“.tmp / scripts”
  • 然后失败,因为在“bower_components”中找不到bower_components;当然,因为bower_components位于“app / bower_components”

如果我颠倒顺序:

  • Requirejs删除注释,devcode不起作用

我将删除require.js优化器,然后我的构建不正常。我应该通过另一个uglify吗。

有更好的解决方案吗? (不要让电脑再次复制bower_components,或者我可能会将位置更改为根目录?)

由于

1 个答案:

答案 0 :(得分:0)

好吧,我不需要devcode grunt任务,因为requirejs已经附带了uglify2,它允许你拥有dist.options.uglify2.compress.global_defs

如果您放置DEBUG = false,则此代码将在生产模式中删除。

        dist: {
            options: {
                baseUrl        : '<%= yeoman.app %>/scripts/',
                name           : 'main',
                mainConfigFile : '<%= yeoman.app %>/scripts/main.js',
                out            : '.tmp/concat/scripts/main.js',
                optimize       : 'uglify2',
                uglify2: {
                        //Example of a specialized config. If you are fine
                        //with the default options, no need to specify
                        //any of these properties.
                        output: {
                            beautify: false
                        },
                        compress: {
                            global_defs: {
                                DEBUG: false
                            }
                        },
                        warnings : true,
                        mangle   : true
                    },
            }
        },