Angular 6“工作区需要在使用前加载。”在尝试生成新组件时

时间:2018-05-10 09:14:23

标签: angular asp.net-core angular6

当我使用angular dotnet创建asp.net核心项目时,new命令不会将angular.json文件(角度6)添加到项目中,因此我们无法使用angular cli。如果我手动添加angular.json文件,项目将在下面给出例外!?

Workspace needs to be loaded before it is used. Error: Workspace needs to be loaded before it is used. at Workspace._assertLoaded (D:\NetAngular\node_modules\@angular-devkit\core\src\workspace\workspace.js:59:19) at Workspace.getProjectByPath (D:\NetAngular\node_modules\@angular-devkit\core\src\workspace\workspace.js:103:14) at Object.getPackageManager (D:\NetAngular\node_modules\@angular\cli\utilities\config.js:97:35) at UpdateCommand.runSchematic (D:\NetAngular\node_modules\@angular\cli\models\schematic-command.js:74:38) at UpdateCommand.<anonymous> (D:\NetAngular\node_modules\@angular\cli\commands\update.js:70:25) at Generator.next (<anonymous>) at D:\NetAngular\node_modules\@angular\cli\commands\update.js:7:71 at new Promise (<anonymous>) at __awaiter (D:\NetAngular\node_modules\@angular\cli\commands\update.js:3:12) at UpdateCommand.run (D:\NetAngular\node_modules\@angular\cli\commands\update.js:69:16)

7 个答案:

答案 0 :(得分:7)

我得到了同样的错误,是的angular.json正在解决问题。 手动添加外部css路径时可能会发生此错误。我在引用bootstrap css时错过了逗号。

在样式数组中添加自定义CSS时,我错过了逗号(,)

错误文件:

如果您看到下面的代码,则以后缺少逗号  “../ node_modules /引导/ DIST / bootstrap.min.css”。

"styles": [
          "../node_modules/bootstrap/dist/bootstrap.min.css"
          "src/styles.css"

        ]

解决方案:逗号添加

"styles": [
          "../node_modules/bootstrap/dist/bootstrap.min.css",
          "src/styles.css"

        ]

CLI error

答案 1 :(得分:3)

相同错误。尝试卸载,重新安装和升级,仍然会报告此错误信息。

删除一个空的〜/ .angular-config.json文件后,一切恢复正常。

答案 2 :(得分:0)

已确认您对angular.json进行了一些更改。如果您的angular.json文件中存在语法问题,则会发生此错误。我会说这是意外行为,应更改为该文件中存在语法问题。

Issue

答案 3 :(得分:0)

buildOptimizer:true之后添加逗号,可以正常工作。

"configurations": {
        "production": {
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": false,
          "extractCss": true,
          "namedChunks": false,
          "aot": true,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true //I missed to put comma here...
          "fileReplacements": [
            {
              "replace": "src/environments/environment.ts",
              "with": "src/environments/environment.prod.ts"
            }
          ]
        }
      }

答案 4 :(得分:0)

我确实更改了angular.json文件,但是没有看到错误。仔细检查逗号和所有内容后,我使用编码(UTF-8)将其保存,然后格式化了文档(右键单击并设置文档格式),删除了10条多余的行。之后,我可以运行角度cli更新以及命令。

答案 5 :(得分:0)

我有类似的错误:

“发生未处理的异常:无法加载工作区配置文件:///Projects///project/angular.json 架构验证失败,并出现以下错误:   数据路径“”不应具有其他属性(脚本)。 有关更多详细信息,请参见“ /private/var/folders/f8/cq9wj86n3gbfj8h64f8jlx2m0000gn/T/ng-5TCBsc/angular-errors.log”。

这是因为我之前在angular.json中添加了额外的“ 脚本”键。删除它,它起作用了!

答案 6 :(得分:0)

我有相同的错误,此错误可能在以下时间发生:

  1. 它可能来自@angular/cli版本。
  2. commaangular.json的行尾缺少tsconfig.json字符。

  3. unicodeangular.json文件的
  4. tsconfig.json(将为UTF-8)。

  5. commentangular.json处有tsconfig.json行。 (在我的情况下,tsconfig.json处有注释行)。
{

  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    //"outDir": "./dist/out-tsc", // comment line caused the error. I removed this line
    "outDir": "../content/ManagmentJob",
    "sourceMap": true,
    "declaration": false,
    "module": "es2015",
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    ...
}