2016-08-10 11 views
0

Я бегу grunt-contrib-uglify v 2.15.1. Он терпит неудачу, когда я использую лямбда или стрелки функцию с:grunt uglify не принимает функции лямбда или стрелки

Running "uglify:admin" (uglify) task 
{ message: 'SyntaxError: Unexpected token: operator (>)', 
    filename: 'admin-app-ng.js', 
    line: 4927, 
    col: 50, 
    pos: 216049, 
    stack: 'Error\n at new JS_Parse_Error (eval at <anonymous> 

Если удалить лямбда затем на уродовать функции. Есть ли способ использовать uglify при использовании функций lambdas/arrow?

Это функция стрелка:

myService.getActions($scope.myVar, (type) => (type === 'myType')?true:false); 

ответ

2

функция стрелка является особенностью ES6 и нет никакой поддержки в уродовать для ES6, так что ваш ES6 должен быть преобразован в ES5, прежде чем он может быть изуродованными.

Когда вы используете grunt, вы можете добавить еще одну задачу - до grunt-contrib-uglify - преобразовать исходный код JavaScript с ES6 на ES5. Babel можно использовать, и есть Babel grunt plugin.