我想导出在StackBlitz中完成的Angular项目,并像在本地计算机上创建的Angular项目一样,使用命令ng serve
从Angular CLI执行它。
答案 0 :(得分:4)
答案 1 :(得分:4)
要解决此错误: ENOENT:没有这样的文件或目录,stat'/.../ projectFolder / tsconfig.app.json'
从StackBlitz下载项目后,我将zip复制到了文件夹中。
我的项目的tsconfig.app.json文件位于src文件夹中。
为了解决以上错误,我在我的angular.json文件中将属性"tsConfig": "tsconfig.app.json"
替换为"tsConfig": "src/tsconfig.app.json"
。
在终端中,我在项目目录中运行npm install
以安装所有依赖项。
然后,我运行ng serve -o
运行服务器,并成功在浏览器中打开了该应用程序。
来源:ENOENT: no such file or directory in tsconfig.app.json using angular 4?
编辑: https://angular.io/start/deployment的“本地构建”部分提供了有关如何在本地构建StackBlitz应用程序的说明。它基本上说要安装Angular CLI,创建一个新项目,用下载的StackBlitz项目中的/ src文件夹替换新项目中的/ src文件夹,最后构建该项目。
但是这对我不起作用,因为它导致缺少模块错误。起作用的是替换新项目文件夹中与StackBlitz项目文件夹中的文件匹配的所有文件。运行npm install
,npm build --prod
,最后运行ng serve -o
。
答案 2 :(得分:1)
答案 3 :(得分:0)
答案 4 :(得分:0)
的确,StackBlitz不会生成此类文件。但是目录中的tsconfig.json文件表示该目录是TypeScript项目的根目录。因此,您可以创建此类文件并将其保留为空。它使我可以从终端进行编译。 https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
答案 5 :(得分:0)
正如@ gal007,@ tamo-studio和@ jb-nizet指出的那样,您应该能够下载项目,运行npm install
和ng serve
,但这可能不适用于所有项目
它适用于当前Angular版本高于版本6的任何项目,我在v7上尝试过,它就像一个魅力。
您的错误消息中有一条注释表明文件tsconfig.json
丢失,您可以从一个新生成的Angular项目中获取该文件。要创建这样的项目,请按照以下步骤操作:
package.json
当前项目使用的Angular版本(查找@angular/core
)angular-cli
的相应版本,例如G。通过npm i -g @angular/cli@^4
$ ng init
tsconfig.json
,将其移至当前项目并根据需要进行调整这应该使其运行。如果仍然无法正常工作,请查看StackOverflow以获取错误消息或启动新问题:)
答案 6 :(得分:0)
我还尝试将 StackBlitz Angular 项目导出到我的本地环境,但遇到了一些不同的错误(例如 Error: Error on worker #1: TypeError: Cannot read property 'Symbol(Symbol.iterator)' of undefined
)——可能是由于我的本地 CLI 所需的文件丢失。
Angular 文档的 Running Your App Locally section(也在@HelloWorldPeace 的回答中指出)对我有用。总结一下:
ng new my-project-name
/src
文件夹替换为 StackBlitz 下载的 /src
文件夹npm install
在项目目录中和 ng serve
(或 npm start
)Angular CLI 在严格模式下发现了一些我必须修复的输入错误(在 StackBlitz 中不必担心它们),但除此之外一切正常。