在Angular中创建新项目时,它总是需要互联网连接来下载包。这也需要很长时间。
据我所知,这些包非常标准,所以如果创建了一个项目;应该有条款从早先创建的回购中获取。
有没有办法离线创建项目?
我用来创建新项目的命令是ng new <project name>
答案 0 :(得分:7)
以下步骤可用于离线创建ng项目。
1-首先只创建跳过其他安装的项目结构
/> ng new ProjectName --skip-install (Use –skip-npm in older version. also you can use --skip-install=true )
2-从现有项目中复制 node_modules 文件夹并粘贴到新创建的项目中
3-仅粘贴依赖项是不够的。要使配置生效,请在项目文件夹中的命令下运行。
/> npm install
请注意,我已禁用互联网连接,以检查相关内容是否未再次从互联网上下载(~284 MB)。
4-您可以看到“添加70个软件包,删除了263个软件包,更新了94个软件包以及在111.811中移动了12个软件包”之类的消息。你完成了。执行命令后检查项目是否在浏览器中运行:
/> ng serve
更新:重新使用“ng_modules”的另一种方法,如共享库
我找到了reuse ng_modules的另一种方式。通过创建一个联结(新项目中现有ng_modules的符号链接,我们不必复制粘贴此文件夹。)。但是这种方法有其自身的缺点,因为将所有与一个项目相关的东西保存在一个地方总是好的。因此,仅将此用于小型开发/测试项目。
答案 1 :(得分:2)
如果您使用的是角度CLI,则可以使用--skip-install
标志,以便跳过安装所有NPM软件包。
基本上,您可以使用以下命令创建一个新项目:
ng new yourProject --skip-install
答案 2 :(得分:0)
我最近的npm版本没有这个问题。 Npm缓存已安装的软件包,通过Internet访问运行ng new OnlineProject
一次将允许ng new OfflineProject
成功脱机完成。这也适用于使用npm install
安装的软件包。