node.js低版本不支持async/await、promise语句在express框架开发中需要支持就必须安装各种兼容模块才能跑起来。
编辑package.json:
"dependencies": { "babel-core": "^6.18.2", "babel-preset-es2015": "^6.18.0", "babel-preset-stage-3": "^6.17.0", "babel-runtime": "^6.18.0", "bluebird": "^3.4.6", "express": "^4.14.0" }, "devDependencies": { "babel-plugin-transform-runtime": "^6.15.0" }
添加完成后记得安装npm install
创建脚本.babelrc
{ "presets": [ "stage-3", "es2015" ], "plugins": [ [ "transform-runtime", { "polyfill": false, "regenerator": true } ] ] }
在需要支持promise的路由处引入以下代码即可
const Promise = require('bluebird');
express启动文件默认在./bin/www,现在添加文件start.js内容如下:
require('babel-core/register'); require('./www'); require("babel-core").transform("code", { plugins: ["transform-runtime"] });
以后启动express时就执行:
node ./bin/start.js
这样尝试着用async/await、promise语法编程看看是否成功执行
相关文件下载:express-babel-master