2017-09-05 68 views
3

正如我在众多来源中看到的,package.json不影响启动angular2应用程序或任何其他应用程序(例如React.js应用程序)。基本上,package.json只提供信息(也被称为元数据,帮助开发人员知道他们在他们的应用中,某种总结为整个应用程序结节?angular2中的package.json是否需要以任何方式启动应用程序?

这是正确的,我写的是什么?

我试图删除一些并运行应用程序,而不需要整个package.json并且应用程序成功启动。

在作出反应,我们有webpack.config.js但我知道,在角度这是隐藏的,不打算被修改。但是,当我看到一个文件连接到应用程序构建过程而非背景场景(比如角度)时,我感觉更舒适。

有人可以详细说明并确认上述论题是否都是正确的?

回答

8

package.json file is required。 它包含所有依赖项(依赖项,DevDependency和peerDependency) 与角度项目的版本。

当您运行npm install命令时,它将安装在package.json下列出的所有node_modules。因此,您需要将代码从一台PC传输到其他PC,然后无需传输所需的所有node_modules,只需输入适当的package.json文件并运行npm install命令即可。

一旦你在你的电脑中安装了所有的依赖项,那么如果你在这个文件中做了任何修改,应用程序就会启动。

+0

所以基本上我需要它在预运行,但是当我真的运行我的应用程序,ng服务我不需要它了? – masterach

+1

它不会给出任何错误。 –

+1

这是非常有用的tnx – masterach

1

它高度依赖于设置。

Angular和React都不要求您使用package.json或Webpack。

正如我在许多来源已经阅读的package.json不影响启动了angular2应用程序或任何其他应用程序(React.js应用为例)。

这取决于。如果您使用npm脚本,或者您的构建过程需要package.json文件,那么这是必需的。否则它是可选的。但请注意,使用它是前端和Node.js项目中的最佳实践。

基本上只的package.json提供的信息(也称为元数据,帮助开发人员知道他们在他们的应用中,某种总结整个应用程序的结节?

这是正确的。当你想将你的项目发布到npm包存储库时,package.json文件也被使用。

在反应中,我们有webpack.config.js,但我知道,在角度这是隐藏的,并不意味着被修改。

当您提到构建过程在Angular中“隐藏”时,我想您是指Angular CLI。你是对的,那Angular CLI uses Webpack幕后。但是,在Angular项目中使用Angular CLI是完全可选的,您可以创建自己的构建配置。

+0

所以基本上你是说如果我使用npm start而不是ng serve,那么我需要包json?换句话说,npm start将使用包json来指向结节文件夹和文件? – masterach

+1

@masterach或多或少。 'npm start'将运行在package.json文件中配置的脚本。但这并不意味着你实际上有一个node_modules目录。运行脚本和依赖项管理是npm的两个特性,但是您可以使用另一个。 – str

+0

当然,但它仍然会(npm start)去查看包json中写入的内容,因此遵循包json命令,它至少会尝试并运行,我是否正确? – masterach

相关问题