2017-09-05 5 views
2

J'ai essayé de déployer mon application rails/browserify via Heroku, Nginx et Apache et je continue à courir dans la même erreur. Lorsque les ressources sont précompilées via bundle exec rake assets:precompile db:migrate RAILS_ENV=production, une de mes classes JS génère une erreur de syntaxe. J'ai trouvé un problème similaire ici: ES6 Classes: Unexpected token in script? mais je n'ai aucune déclaration de variables en dehors de mon constructeur ou de mes méthodes.Erreur de syntaxe Javascript sur rails/application browserify

L'erreur:

rake aborted! 
 
ExecJS::RuntimeError: SyntaxError: Unexpected token: name (Game) 
 
JS_Parse_Error.get ((execjs):3538:621) 
 
(execjs):4060:47 
 
(execjs):1:102 
 
Object.<anonymous> ((execjs):1:120) 
 
Module._compile (module.js:571:32) 
 
Object.Module._extensions..js (module.js:580:10) 
 
Module.load (module.js:488:32) 
 
tryModuleLoad (module.js:447:12) 
 
Function.Module._load (module.js:439:3) 
 
Module.runMain (module.js:605:10)

La classe Javascript qui produit l'erreur de syntaxe:

class Game { 
 

 
    constructor(attributes) { 
 
     this.id = attributes.id; 
 
     this.characters = attributes.characters; 
 
     this.quotes = attributes.game_quotes; 
 
     this.state = attributes.state; 
 
     this.completed = attributes.completed; 
 
    } 
 

 
    score() { 
 
     if (this.completed == true) { 
 
      var score = 0; 
 
      for (var i = 0; i < this.state.length; i++) { 
 
       if (this.state[i] == true) { 
 
        score++; 
 
       } 
 
      } 
 
      return score; 
 
     } else { 
 
      return "Game Incomplete"; 
 
     } 
 
    } 
 

 
    percentageScore() { 
 
     if (this.score() >= 0) { 
 
      return (this.score() * 10 + "%"); 
 
     } else { 
 
      return "Game Incomplete"; 
 
     } 
 
    } 
 

 
    }

Où i s l'erreur de syntaxe?

Voici un lien vers le dépôt de ma demande si vous avez besoin un peu de contexte: Repository

Toute aide de la communauté serait grandement appréciée. Merci d'avance si vous pouvez offrir des conseils.

Répondre

0

L'erreur disparaît en commentant la ligne suivante dans config/environments/production.rb

config.assets.js_compressor = ...