找不到相对于目录 "web/static/js" 的预设 "es2015"

Couldn't find preset "es2015" relative to directory "web/static/js"

我正在尝试构建一个 vagrant 服务器以涉足 elixir 和 phoenix,但是在安装所有要求和依赖项之后,在 运行 mix phoenix.server 我收到以下错误:

error: Compiling of 'web/static/js/app.js' failed. Couldn't find preset "es2015" relative to directory "web/static/js" ;

我不确定这里 'preset' 的上下文,我希望更有经验的 phoenix 用户知道它的意思。

一些粗略的 Google 什么也没给我,除了它可能与 babel 有关。

编辑:我只是尝试安装我认为是丢失的包,sudo npm install babel-preset-es2015 -g,但它没有解决错误。

请在此处查看修复: https://github.com/phoenixframework/phoenix/issues/1410

  1. 升级到节点 >= v5.0.0
  2. npm 缓存清理
  3. cd my_app
  4. rm -rf node_modules/
  5. npm 安装
  6. 混合phoenix.server

我看到这里已经有一个可接受的答案。我刚刚遇到了完全相同的错误,并尝试了 Chris 在上面发布的解决方案。它对我不起作用,但基于 Chris 在上面发布的 github 问题 link,我找到了一个适合我的解决方案。

我发现您不一定需要使用 node v5.0+。我正在使用节点 4.4.3 LTS,一切正常。

npm install --save-dev babel-preset-es2015

已接受的答案对我不起作用。

我不得不删除我应用的父目录中的 .babelrc

我的解决方案很棒:

.pipe(babel({
    presets: [require('babel-preset-es2015')]
}))

谢谢!