我正在尝试使用Flow类型为Node.js项目设置WebStorm。
我使用NPM脚本可以正常工作,但想与IDE集成。
这是我的package.json
的脚本部分:
"scripts": {
"dev":
"watch --wait=1 'flow-remove-types src/ -d lib/ --all --pretty' ./src/ & nodemon ./lib/server.js",
"start": "npm run flow:build && node ./lib/",
"lint": "eslint src/**",
"test": "npm run flow:build && jest lib",
"coverage": "jest --collectCoverageFrom=src/**.js --coverage src",
"flow": "flow",
"flow:check": "flow check ./src/",
"flow:build": "flow-remove-types ./src/ -d ./lib/ --all --pretty",
"flow:deps": "flow-typed install",
"flow:watch": "flow-watch"
},
现在,如果我修改测试的运行配置,并且:
src
目录更改为lib
然后我可以运行该配置。
我还有两个问题。
有没有人在WebStorm中有Node.js和流程一起工作?
flow-remove-types
不会生成源映射,因此调试器绝对无法将lib
中生成的文件映射到src
中的原始文件。如果要调试测试,则必须向位于lib
文件夹中的生成文件添加断点您可以使用Babel flow preset而不是flow-remove-types
:
npm install --save-dev babel-cli babel-preset-env babel-preset-flow
.babelrc
文件:
{
"presets": ["flow"]
}
这就是你要做的一切 - 没有预编译等,从源文件的水槽/调试运行将开箱即用
您可以使用--sourcemaps和-pretty标志:
flow-remove-types --pretty --sourcemaps --out-dir out/ in/