Heroku上的BabelJs:无法find相对于目录“/ app”的预设“env”
我有一个SailsJs在Heroku上的NodeJs的应用程序,我不能运行babeljs。 它在我的本地主机上运行正常,但我总是得到错误:
错误:无法find相对于目录“/ app”的预设“env”
Heroku坚持在/app
文件夹中查找itens。 这个项目没有一个/app
文件夹
我的应用文件夹结构是:
app_name - api - assets - config - tasks - views
我遵循http://babeljs.io的文档到我的.babelrc
.babelrc
现在:
{ "presets": ["react", "env", "stage-1"], "plugins": ["transform-class-properties"] }
已经尝试:
{ "presets": ["react", "es2015", "stage-1"], "plugins": ["transform-class-properties"] }
当我设置.babelrc使用es2015我得到的错误:
Invalid: `{ presets: [{option: value}] }` Valid: `{ presets: [['presetName', {option: value}]] }`
我已经安装了依赖关系
npm install babel-preset-es2015 npm install babel-preset-react npm install babel --save-dev
我的package.json
{ "name": "redux-cardeck", "private": true, "version": "0.0.1", "engines": { "node": "6.11.4" }, "description": "a Sails-Redux application for multi-player online card game", "keywords": [ "sailsjs", "redux", "es2015", "webpack" ], "dependencies": { "axios": "^0.13.1", "babel-cli": "^6.26.0", "babel-plugin-transform-class-properties": "^6.11.5", "babel-plugin-transform-object-rest-spread": "^6.6.5", "babel-polyfill": "^6.7.2", "babel-preset-stage-1": "^6.13.0", "connect-mongo": "0.8.2", "css-loader": "^0.23.1", "ejs": "2.3.4", "file-loader": "^0.8.5", "grunt": "0.4.5", "grunt-babel": "^6.0.0", "grunt-contrib-clean": "0.6.0", "grunt-contrib-coffee": "0.13.0", "grunt-contrib-concat": "0.5.1", "grunt-contrib-copy": "0.5.0", "grunt-contrib-cssmin": "0.9.0", "grunt-contrib-jst": "0.6.0", "grunt-contrib-less": "1.1.0", "grunt-contrib-uglify": "0.7.0", "grunt-contrib-watch": "0.5.3", "grunt-sails-linker": "~0.10.1", "grunt-sync": "0.2.4", "include-all": "~0.1.6", "node-sass": "^3.8.0", "postcss-modules-extract-imports": "^1.0.0", "postcss-modules-scope": "^1.0.0", "rc": "1.0.1", "react": "^0.14.9", "react-dom": "^0.14.9", "react-redux": "^4.4.8", "react-router": "^2.6.1", "react-tap-event-plugin": "^0.2.2", "redux": "^3.7.2", "redux-form": "^5.3.2", "redux-optimist": "0.0.2", "redux-optimistic-ui": "^0.3.2", "redux-promise": "^0.5.3", "redux-thunk": "^2.1.0", "redux-undo": "^0.6.1", "sails": "~0.12.1", "sails-disk": "~0.10.9", "sails-hook-babel": "^6.0.1", "sails-mongo": "^0.12.2", "sails-postgresql": "^0.11.4", "sails-service-mailer": "^3.2.1", "sails-webpack": "^1.0.13", "sass": "^0.5.0", "sass-loader": "^3.2.3", "style-loader": "^0.13.1", "unexpected-react": "^1.0.0", "updeep": "^0.16.1", "url-loader": "^0.5.7" }, "scripts": { "debug": "node debug app.js", "start": "./node_modules/.bin/babel-node app.js" }, "main": "app.js", "repository": { "type": "git", "url": "git://github.com/vanphuong12a2/redux-cardeck.git" }, "author": "phuong", "license": "", "devDependencies": { "axios-mock-adapter": "^1.6.1", "babel-cli": "^6.26.0", "babel-core": "^6.7.2", "babel-loader": "^6.4.1", "babel-preset-env": "^1.6.1", "babel-preset-es2015": "^6.24.1", "babel-preset-react": "^6.24.1", "babel-preset-stage-0": "^6.24.1", "css-modules-require-hook": "^4.0.0", "jsdom": "^8.1.0", "react-tools": "^0.13.3", "redux-devtools": "^3.4.0", "redux-logger": "^2.6.1", "source-map": "^0.5.3", "unexpected": "^10.10.8", "webpack-dev-server": "^1.14.1" } }
有人已经在Heroku上使用过BabelJs了吗? 我不明白为什么它不能在package.json上findbabeljs。 我把heroku的本地设置为heroku
"scripts": { "debug": "node debug app.js", "start": "./node_modules/.bin/babel-node app.js" },
我认为这可能是一个与Heroku的相对结构的问题,或者我没有名称app
的文件夹的事实
谢谢,如果有人可以帮助我这个。
默认情况下,Heroku不会在package.json
安装"devDependencies"
中列出的依赖项。
您可以将预设移动到"dependencies"
也可以按照此处的步骤来改变此行为。
- 摩卡返回“callback不是一个函数”asynchronous调用
- ES6中的JavaScript开发与debugging
- babel-node无法find模块 – 将预设选项解释为文件名?
- 使用Gulp with Babel错误导入
- 错误:无法find预设“反应”安装时使用npm install –global babel-preset-react但工作没有全局标志
- 用于在node_modules中编译模块的Webpackconfiguration
- babel-preset-env不能与webpack-dev-server v2.2.0-rc.0一起使用
- 如何使用babel为我的js服务模块实现已validation的es 7装饰器
- 运行babel时,JSdoc for方法在传输代码中丢失