Angular - ng serve vs npm start

10

我有一个关于angular-cli的小问题。

当我运行ng serve时,使用的是全局安装的angular-cli,而当我运行npm start时,使用的是本地的angular-cli,这是真的吗?


1
你从哪里获取这些信息的?我倾向于认为这是错误的。当我在我的CLI项目上运行npm start时,它只会运行ng serve - Bean0341
1
我问这个问题是因为我全局安装了版本为1.0.0-beta.26的angular-cli,而本地安装了最新版本1.0.0-beta.32.3。当我运行ng serve时出现错误,但当我运行npm start时一切正常。 - Dawid Dyrcz
另一件让我相信这是真的事情是,我刚刚使用 npm uninstall -g angular-cli @angular/cli 卸载了全局的 Angular CLI,现在当我尝试运行 ng serve 时,它会提示 ng 不被识别,而 npm start 仍然可以正常工作。 - Dawid Dyrcz
这里有另一个答案,你可以参考。 - Selvakumar
可能是何时使用“npm start”和何时使用“ng serve”?的重复问题。 - andolsi zied
4个回答

5

命令将由 package.json 决定。根据 package.json,可以使用 ng serve / npm start 更改。如果 ng serve 不起作用,则可以使用 npm start 运行服务器。

ng server :

"scripts": { "ng": "ng", "start": "ng serve", "test": "ng test",....... }


5

3

是的,这是真的。

假设你全局安装的 Angular CLI 版本为 2,并且你刚从 Github 上克隆并安装了一个使用 Angular CLI 版本 1 创建的项目。如果你运行 ng serve,它将使用版本 2(即全局 cli),如果你运行 npm run start,它将使用 node_modules/.bin 文件夹中的脚本(该文件夹位于你的项目中,这是为此工作选择的正确方法)。


0

是的,这是真的。ng serve 在安装的 Angular 版本的全局 CLI 上运行应用程序,而 npm run start 则在从 node-module 克隆的特定 Angular 应用程序版本上运行它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接