我刚刚执行了ng eject
命令。但现在我需要还原它,并继续使用ng
命令。有可能吗?
如果有任何帮助,我将不胜感激。
答案 0 :(得分:69)
在https://github.com/angular/angular-cli/blob/master/packages/%40angular/cli/tasks/build.ts#L27(当前角度CLI版本:1.0.1),有一个条件:
if (config.project && config.project.ejected) {
throw new SilentError('An ejected project cannot use the build command anymore.');
}
运行ng-eject
时,使用新的npm脚本修改 package.json 文件,添加或替换 webpack.config.js 文件并已弹出标志已添加到 .angular.cli.json :
"project": {
"name": "YOUR PROJECT NAME",
"ejected": true
},
所以,只需删除"弹出"来自 .angular.cli.json 文件的标志:
或将此标记更改为false
:
"project": {
"name": "YOUR PROJECT NAME",
"ejected": false
}
答案 1 :(得分:3)
使用当前版本的angular cli,您需要标记弹出:false或删除文件angular-cli.json文件中的弹出属性而不是package.json文件
答案 2 :(得分:1)
此命令使构建配置成为项目的一部分并摆脱Angular CLI。并设置“弹出”:在angular-cli.json文件中为true,在项目根目录中创建新文件webpack.config.js,并在package.json中修改运行脚本。
最后,要撤消ng-eject命令,需要再次修改package.json文件