Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

1.6K
Visualizações
Uglify SyntaxError: Token inesperado: punc ())

Estoy tratando de usar trago para minimizar una carpeta que contiene archivos JS. Sin embargo, uno de los archivos tiene el error anterior, lo que impide que se minimice.

Me las arreglé para atrapar e imprimir el error, que he impreso parcialmente aquí:

 JS_Parse_Error { message: 'SyntaxError: Unexpected token: punc ())', filename: 'ex.js', line: 189, col: 25, pos: 6482, stack: Error\n at new JS_Parse_Error (eval at <anonymous> ... ) plugin: 'gulp-uglify', fileName: '.../js/ex.js', showStack: false }

El archivo en cuestión contiene lo siguiente, abreviado:

 function() { ... $.confirm({ buttons: { confirm: function() { $.post('/ajax-handler', { ... }) .done( function(response) { var data = filterResponse(response); if (data['status'] == 'success') { sleep(1000).then(() => { * ... }); sleep(5000).then(() => { ... }); } else { console.log('Oops!'); } }) .fail( function(err, status, response) { ... }); }, cancel: function() {} } }); ... }

Agregué el "*" arriba para indicar la posición exacta enumerada por JS_Parse_Error.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

// Actualizar

De los comentarios ~ @imolit

v2.0.0 (2018-09-14) - CAMBIOS IMPORTANTES (enlace)

Vuelva a uglify-js (uglify-es está abandonado, si necesita el código uglify ES6, use terser-webpack-plugin ).


Respuesta original antes de la actualización...

Espero que pueda inspirarse con esta solución que funciona con webpack. (Link abajo)

Simplemente enseñe UglifyJS ES6

Hay dos versiones de UglifyJS - ES5 y ES6 (Harmony), ver en git
La versión ES5 viene de forma predeterminada con todos los complementos, pero si instala una versión de Harmony explícitamente, esos complementos la usarán en su lugar.

paquete.json

 "uglify-js": "git+https://github.com/mishoo/UglifyJS2.git#harmony"

o

 npm install --save uglify-js@github:mishoo/UglifyJS2#harmony yarn add git://github.com/mishoo/UglifyJS2#harmony --dev

paquete web

Para usarlo con webpack, instale también el complemento webpack

 npm install uglifyjs-webpack-plugin --save-dev yarn add uglifyjs-webpack-plugin --dev

luego importe el complemento instalado manualmente

 var UglifyJSPlugin = require('uglifyjs-webpack-plugin');

y reemplazarlo en el código

 - new webpack.optimize.UglifyJsPlugin({ ... }) + new UglifyJSPlugin({ ... })

Para obtener más información sobre el paquete web (instalación/uso), consulte https://github.com/webpack-contrib/uglifyjs-webpack-plugin#install

over 4 years ago · Santiago Trujillo Relatório

0

npm install uglifyjs-webpack-plugin --save-dev no es suficiente

El problema principal es "uglifyjs-webpack-plugin": "^0.4.6" en el paquete webpack.json

Según semver , ^0.4.6 := >=0.4.6 <0.5.0 . Debido al cero inicial, webpack nunca usará 1.0.0-beta.2 .

Entonces, después de ejecutar npm i -D uglifyjs-webpack-plugin@beta , debe realizar un paso más, que es rm -rf node_modules/webpack/node_modules/uglifyjs-webpack-plugin . Luego, webpack recogerá la versión de node_modules/uglifyjs-webpack-plugin en lugar de node_modules/webpack/node_modules/uglifyjs-webpack-plugin

Actualización el 2018-04-18: webpack v4 no tiene este problema

over 4 years ago · Santiago Trujillo Relatório

0

Agrega la dependencia babel-preset-es2015 para arreglar esto.

Y también agregue 'es2015' en el archivo .babelrc .

 json { "presets": ["es2015"] }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda