为角度6添加角度材料时出错

时间:2018-05-25 06:48:02

标签: angular-material angular6

我对角度很新,我学习角度6 但我无法通过“入门”页面添加“

”之类的组件
ng add component heroes

发生错误,错误是:



Schematic input does not validate against the Schema: {"dryRun":false,"inlineStyle":false,"
inlineTemplate":false,"changeDetection":"Default","styleext":"css","spec":true,"flat":false
,"skipImport":false,"export":false}
Errors:

  Data path "" should NOT have additional properties(dryRun).




当我用Google搜索时,有人说它可以通过添加角度材料来修复,所以我开始安装角度材料,但我的应用程序错误 这是控制台日志:



compiler.js:215 Uncaught Error: Template parse errors:
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("
    class="sidenav"
    fixedInViewport="true"
    [ERROR ->][attr.role]="isHandset$ | async ? 'dialog' : 'navigation'"
    [mode]="isHandset$ | async ? 'over' : "): ng:///AppModule/MyMenuComponent.html@5:4
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("
    fixedInViewport="true"
    [attr.role]="isHandset$ | async ? 'dialog' : 'navigation'"
    [ERROR ->][mode]="isHandset$ | async ? 'over' : 'side'"
    [opened]="!(isHandset$ | async)">
    <mat-toolbar "): ng:///AppModule/MyMenuComponent.html@6:4
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("
    fixedInViewport="true"
    [attr.role]="isHandset$ | async ? 'dialog' : 'navigation'"
    [ERROR ->][mode]="isHandset$ | async ? 'over' : 'side'"
    [opened]="!(isHandset$ | async)">
    <mat-toolbar "): ng:///AppModule/MyMenuComponent.html@6:4
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("isHandset$ | async ? 'dialog' : 'navigation'"
    [mode]="isHandset$ | async ? 'over' : 'side'"
    [ERROR ->][opened]="!(isHandset$ | async)">
    <mat-toolbar color="primary">Menu</mat-toolbar>
    <mat-nav-li"): ng:///AppModule/MyMenuComponent.html@7:4
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("isHandset$ | async ? 'dialog' : 'navigation'"
    [mode]="isHandset$ | async ? 'over' : 'side'"
    [ERROR ->][opened]="!(isHandset$ | async)">
    <mat-toolbar color="primary">Menu</mat-toolbar>
    <mat-nav-li"): ng:///AppModule/MyMenuComponent.html@7:4
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'dialog' : 'navigation'] in ng:///AppModule/MyMenuComponent.html@5:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
    #drawer
    class="sidenav"
"): ng:///AppModule/MyMenuComponent.html@1:2, Directive MatSidenav
Parser Error: Unexpected token '?' at column 20 in [isHandset$ | async ? 'over' : 'side'] in ng:///AppModule/MyMenuComponent.html@6:4 ("<mat-sidenav-container class="sidenav-container">
  [ERROR ->]<mat-sidenav
   compiler.js:215)
    at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse (compiler.js:14702)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate (compiler.js:22709)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate (compiler.js:22696)
    at compiler.js:22639
    at Set.forEach (<anonymous>)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents (compiler.js:22639)
    at compiler.js:22549
    at Object.then (compiler.js:206)
    at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents (compiler.js:22548)
syntaxError @ compiler.js:215
push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse @ compiler.js:14702
push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate @ compiler.js:22709
push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate @ compiler.js:22696
(anonymous) @ compiler.js:22639
push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents @ compiler.js:22639
(anonymous) @ compiler.js:22549
then @ compiler.js:206
push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents @ compiler.js:22548
push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler.compileModuleAsync @ compiler.js:22508
push../node_modules/@angular/platform-browser-dynamic/fesm5/platform-browser-dynamic.js.CompilerImpl.compileModuleAsync @ platform-browser-dynamic.js:143
push../node_modules/@angular/core/fesm5/core.js.PlatformRef.bootstrapModule @ core.js:4790
./src/main.ts @ main.ts:11
__webpack_require__ @ bootstrap:81
0 @ main.ts:12
__webpack_require__ @ bootstrap:81
checkDeferredModules @ bootstrap:43
webpackJsonpCallback @ bootstrap:30
(anonymous) @ main.js:1
contentScript.js:86 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
getIp @ contentScript.js:86
countData @ contentScript.js:91
(anonymous) @ contentScript.js:188
&#13;
&#13;
&#13;

请帮帮我们

3 个答案:

答案 0 :(得分:0)

看起来您尝试生成新组件, 使用add,您可以向依赖项添加库 - (package.json)。 尝试
“ng生成组件[组件名称]” (https://github.com/angular/angular-cli/wiki/generate-component)。

你安装了角度/ cli吗? 要使用ng生成组件,你需要angular / cli。 https://cli.angular.io/

无论如何,你可以观看这个“Angular Material Introduction&amp; Setup”视频 https://www.youtube.com/watch?v=u679SQsfRVM

答案 1 :(得分:0)

你使用它错了,但首先如果你只是用棱角分明学习,就没有必要使用棱角分明的材料,这个想法会产生误导。

Ng Add

  

另一个新的CLI命令ng add <package>使添加新功能成为可能   轻松完成您的项目。 ng add将使用您的包管理器进行下载   新的依赖项并调用安装脚本(实现为   原理图)可以通过配置更改来更新项目,   添加其他依赖项(例如polyfill)或scaffold   特定于包的初始化代码。

ng add 命令仅用于依赖关系管理,请检查this

如果您尝试生成组件,请按照以下步骤操作:

ng generate component my-new-component
ng g component my-new-component # using the alias

在潜水或至少完成angular.io英雄之旅教程之前,了解angular-cli的基本知识。

要获取文档here

中完整的angular-cli命令用法

答案 2 :(得分:0)

Data path "" should NOT have additional properties(dryRun).

此错误不是重大错误。

这意味着您的angular.json文件中有&#34; dryRun&#34;作为财产,不受支持。从它的外观来看 &#34; dryRun&#34;属性允许您查看在没有实际编辑文件的情况下执行g时会发生什么。

例如:ng g c ops-components/dividers --project ops-lib --dryRun

enter image description here

删除dryRun属性。