2017-05-29 67 views
0

package.json例如at this link包括以下start命令:为什么在此npm启动脚本中tsc被调用两次?

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ", 

什么明确没有上面的命令吗?

我认为"concurrently \"npm run tsc:w\" \"npm run lite\" "意味着既tsclite-server同时启动,并同时放在一个tsc这样watch的改变会立即重新载入lite-server。它是否正确?还有,为什么要拨打tsc两次?包含所有组成部分的整个代码行的明确解释是什么?

+0

我可以在'package.json'中看到你的整个'脚本'对象吗? – Li357

+0

@AndrewLi请刷新此页面。它应该在OP中的超链接中,我在原始帖子后添加了一分钟。你能在链接中看到它吗? – CodeMed

回答

3

你可以把它分解命令分成部分(带引号去掉):

  1. tsc
  2. concurrently
  3. npm run tsc:w
  4. npm run lite

第一部分调用打字稿编译器CLI并编译您的TypeScript文件。

接下来,有一个&&,这意味着“cmd1然后/和cmd2”。下一节:

concurrently npm run tsc:w npm run lite 

采用concurrently package CLI运行给出的命令,这是npm run tsc:wnpm run lite。该部分:

npm run tsc:w 

这将运行在你的package.json脚本:

"tsc:w": "tsc -w" 

然后npm run lite运行在package.json相应的脚本:

"lite": "lite-server" 

所以,你在技术上叫tsc两次,但tsc:w开始观看您的TypeScript文件。 使用-w不会进行初始构建,因此需要首先使用tsc来创建文件,然后-w监视您的文件并重建后续更改的文件。然后concurrent脚本运行监视脚本和服务器。

相关问题