【问题标题】:Uglify JS Unexpected token operator <<->>, expected punc <<: >>Uglify JS 意外的标记运算符 <<->>,预期的 punc <<: >>
【发布时间】:2014-01-18 00:50:48
【问题描述】:

当我尝试在以下行中使用 Grunt uglify js 进行 uglify 和 concat 时,

ember 数据:'ember'

丑化失败。如何让uglifyjs跳过检查>?

咕噜声配置:

module.exports = function(grunt){
grunt.initConfig({
    pkg : grunt.file.readJSON('package.json'),
    concat : {
        options : {
            seperator :  ';'
        },
        dist : {
            src : ['js/*.js'],
            dest : 'output.min.js'
        }
    },
    uglify : {
        options : {
            banner : '/*! <%=grunt.template.today("dd-mm-yyyy")%> */\n'
        },
        dist : {
            files : {
                'dist/output.min.js' : ['<%= concat.dist.dest%>']
            }
        }
    },


});
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-concat');

grunt.registerTask('default', ['concat', 'uglify']);

}

我的 config.js 是

require.config({
baseUrl: 'js',
shim: {
    ember: {
        deps: ['handlebars', 'jquery'],
        exports: 'Ember'
    },
    ember-data: 'ember',
    bootstrap: 'jquery',
    handlebars: ['Handlebars']
},
paths: {
    'App': '\js\application\app',
    'models': '',
    'views': '',
    'controllers': '',
    'templates': '',

    /*LIBRARIES*/
    'jquery': '\libs\jquery\jquery',
    'handlebars': '\libs\handlebars\handebars-1.1.2',
    'ember': '\libs\ember\ember-1.2.0',
    'ember-data' : '\libs\ember\ember-data'
    'bootstrap': '\libs\bootstrap\bootstrap.min.js',

    /*REQUIRE JS PLUGINS*/
    'text': '\libs\require\require plugins\text',
    'hbs': '\libs\require\require plugins\hbs',
    'domReady': '\libs\require\require plugins\domReady'
},
hbs: {
    disableI18n: true,
    templateExtension: 'hbs'
},

'App',
'store',
'router'    

});

谢谢

【问题讨论】:

  • 你能发布你的 uglify 的 Grunt 配置,以及导致失败的代码吗?
  • 我在 windows 操作系统中使用 node,我在 node 终端中使用了命令 grunt.cmd 谢谢
  • 具体错误是什么?
  • 当 uglify 尝试对第 8 行 ember-data: 'ember' 中的 config.js 进行 uglify 时抛出以下错误 Unexpected token operator >, expected punc >跨度>

标签: gruntjs uglifyjs


【解决方案1】:

这不是丑陋的问题。

您的 JavaScript 文件的这一部分完全无效:

shim: {
ember: {
    deps: ['handlebars', 'jquery'],
    exports: 'Ember'
},
ember-data: 'ember',
bootstrap: 'jquery',
handlebars: ['Handlebars']
},

您需要将ember-data: 'ember' 更改为'ember-data': 'ember'。注意引号!

【讨论】:

  • 对不起,我没有注意到引号中的差异,它在哪里?谢谢。
  • ember-data: 必须转义,如 'ember-data':
猜你喜欢
  • 2017-07-26
  • 1970-01-01
  • 2021-02-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多