mat-sidenav push 属性 导致构建错误

mat-sidenav push property causing a build error

我在 Angular 6 并且正在使用 mat-sidenav

<mat-sidenav #drawer position="end" fixedInViewport="true" [mode]="push" [opened]="false">

但是,当我 运行 ng build --prod 时,它会抛出错误 属性 'push' does not exist on type 'MyComponent'.

一切正常,但这个错误阻碍了我们的部署过程。

另外,还有一个问题。为什么 [mode] 在方括号中。 Angular 2+ 中的方括号不是仅在计算表达式时使用吗?在这种情况下,它只是字符串 'push' 对吗?如果我删除方括号,sidenav 将停止工作。

如果 pushmat-sidenav 组件中预期的实际文字值,则在单引号内传递字符串 push。

<mat-sidenav #drawer position="end" fixedInViewport="true" [mode]="'push'" [opened]="false">

如果您不传入单引号,angular 代码将在您的组件中搜索名为 push 的变量并将其值传递给 mat-sidenav