我尝试使用“ng destroy component foo”,它告诉我“Angular-CLI不支持销毁命令”
如何使用Angular CLI正确地删除组件?
我尝试使用“ng destroy component foo”,它告诉我“Angular-CLI不支持销毁命令”
如何使用Angular CLI正确地删除组件?
当前回答
我写了一个bash脚本,它应该自动执行下面Yakov Fain所写的过程。它可以像。/removeComponent这样调用
#!/bin/bash
if [ "$#" -ne 1 ]; then
echo "Input a component to delete"
exit 1
fi
# finds folder with component name and deletes
find . -type d -name $1 | xargs rm -rf
# removes lines referencing the component from app.module.ts
grep -v $1 app.module.ts > temp
mv temp app.module.ts
componentName=$1
componentName+="Component"
grep -v -i $componentName app.module.ts > temp
mv temp app.module.ts
其他回答
我现在使用的是Angular 10。在手动删除所有文件和引用后,我重新运行“ng serve”,它工作了。
如果你在CLI中寻找一些命令,那么ans目前是NO。 但是您可以手动删除组件文件夹和所有引用。
destroy或类似的东西可能会出现在CLI中,但这不是目前的主要焦点。因此,您需要手动执行此操作。
删除组件目录(假设你没有使用——flat),然后将它从声明它的NgModule中移除。
如果你不确定该怎么做,我建议你有一个“干净”的应用程序,这意味着当前git没有变化。然后生成一个组件,并查看在repo中更改了什么,这样您就可以从那里回溯删除组件所需做的事情。
更新
如果您只是在试验您想要生成的内容,您可以使用——dry-run标志在磁盘上不生成任何文件,只查看更新的文件列表。
删除包含该组件的文件夹。 在app.module.ts中,删除该组件的import语句,并从@NgModule的声明部分中删除它的名称 从index.ts中删除包含此组件的export语句的行。
目前,Angular CLI不支持删除组件的选项,你需要手动执行。
从app.module中删除每个组件的导入引用 删除组件文件夹。 你还需要从app.module.ts文件中的@NgModule声明数组中删除组件声明