【问题标题】:Cannot open older Angular project with latest Angular version? [duplicate]无法使用最新的 Angular 版本打开旧的 Angular 项目? [复制]
【发布时间】:2021-05-02 19:05:59
【问题描述】:

我刚刚安装了最新版本的 Node.js (v14.16.1) 和 Angular (11.2)。

我们的 TA 给了我们 Angular 项目,但我不能在我的机器上 ng sever-it。我收到以下错误:

An unhandled exception occurred: No projects support the 'serve' target.
See "C:\Users\Miljan\AppData\Local\Temp\ng-hVo6jS\angular-errors.log" for further details.

当我打开angular-errors.log 时,我有以下输出:

[error] Error: No projects support the 'serve' target.
at ServeCommand.initialize (C:\Users\Miljan\AppData\Roaming\npm\node_modules\@angular\cli\models\architect-command.js:58:19)
at async ServeCommand.validateAndRun (C:\Users\Miljan\AppData\Roaming\npm\node_modules\@angular\cli\models\command.js:127:9)
at async Object.runCommand (C:\Users\Miljan\AppData\Roaming\npm\node_modules\@angular\cli\models\command-runner.js:204:24)
at async default_1 (C:\Users\Miljan\AppData\Roaming\npm\node_modules\@angular\cli\lib\cli\index.js:80:31)

这里可以downloadTA给我们的Angular项目。

下面是来自 TA 项目的package.json

{
      "name": "blog-client",
      "version": "0.0.0",
      "license": "MIT",
      "scripts": {
        "ng": "ng",
        "start": "ng serve",
        "build": "ng build",
        "test": "ng test",
        "lint": "ng lint",
        "e2e": "ng e2e"
      },
      "private": true,
      "dependencies": {
        "@angular/animations": "^5.0.0",
        "@angular/common": "^5.0.0",
        "@angular/compiler": "^5.0.0",
        "@angular/core": "^5.0.0",
        "@angular/forms": "^5.0.0",
        "@angular/http": "^5.0.0",
        "@angular/platform-browser": "^5.0.0",
        "@angular/platform-browser-dynamic": "^5.0.0",
        "@angular/router": "^5.0.0",
        "bootstrap": "^3.3.7",
        "core-js": "^2.4.1",
        "rxjs": "^5.5.2",
        "zone.js": "^0.8.14"
      },
      "devDependencies": {
        "@angular/cli": "1.5.0",
        "@angular/compiler-cli": "^5.0.0",
        "@angular/language-service": "^5.0.0",
        "@types/jasmine": "~2.5.53",
        "@types/jasminewd2": "~2.0.2",
        "@types/node": "~6.0.60",
        "codelyzer": "~3.2.0",
        "jasmine-core": "~2.6.2",
        "jasmine-spec-reporter": "~4.1.0",
        "karma": "~1.7.0",
        "karma-chrome-launcher": "~2.1.1",
        "karma-cli": "~1.0.1",
        "karma-coverage-istanbul-reporter": "^1.2.1",
        "karma-jasmine": "~1.1.0",
        "karma-jasmine-html-reporter": "^0.2.2",
        "protractor": "~5.1.2",
        "ts-node": "~3.2.0",
        "tslint": "~5.7.0",
        "typescript": "~2.4.2"
      }
    }

【问题讨论】:

  • 您是否尝试安装和使用项目依赖项所需的 CLI 版本?或者只是安装项目并使用将调用 CLI 本地版本的脚本?最新的 CLI 不适用于 v5 项目,这不足为奇。
  • 是的,感谢您的意见。不幸的是,我不知道如何编写一个调用本地版本 CLI 的脚本。如果你能给我一个提示在哪里寻找这样的东西,那就太好了。对我来说,CLI 抱怨的原因也不足为奇。关于您的第一个问题,我设置了最新版本的 Ang,因此我可以使用 Tailwind,只需使用 ng add @ngneat/tailwind。我在使用旧版本的 CLI 设置 Tailwind 时遇到问题,这就是我使用最新版本的原因。希望你能给我一些有用的建议。干杯
  • 软件包文件中已经提供了这些脚本。如果您想要一个最新的 Angular 项目,请将 ng new 与最新的 CLI 一起使用,而不是从旧的 CLI 开始。
  • 可能我解释的不准确。本质上,我的笔记本电脑上有两个项目。第一个是我为其他课程制作的(使用 ng new)(在安装最新的 Node 和 CLI 之后),。第二个,是TA给我们的那个。所以问题是如何使用最新的 CLI 和 Node 启动旧的 Angular 项目?我是否必须降低 Angular CLI 的版本?
  • 然后,再次:使用包文件中的脚本。这些将使用项目的 CLI 版本。

标签: node.js angular angular-cli


【解决方案1】:

好的,我做到了。

首先是npm installnpm run-script build,最后是ng serve

这有助于How to ng serve an older Angular project?

【讨论】:

    猜你喜欢
    • 2018-08-23
    • 2015-01-05
    • 1970-01-01
    • 2021-12-01
    • 2022-12-05
    • 1970-01-01
    • 2021-09-11
    • 2022-12-22
    • 2020-02-06
    相关资源
    最近更新 更多