Angular4 webpack2 @ angular / material build error

时间:2017-04-20 09:05:10

标签: angular webpack-2 angular-material2

我可以在我的开发上取得成功,但是构建它会出错,我应该怎么做

未处理的承诺拒绝:模板解析错误: 无法绑定到' mdmenutrigger'因为它不是“a”的已知属性。 ("主页博客关于] [mdmenutriggerfor] =主题>主题蓝海] [mdmenutriggerfor] =帐户> TaylorPzreal;任务:Promise.then;值:错误:模板解析错误: 无法绑定到' mdmenutrigger'因为它不是“a”的已知属性。 ("主页博客关于] [mdmenutriggerfor] =主题>主题蓝海] [mdmenutriggerfor] =帐户> TaylorPzreal http:// localhost:3000 / dist / vendor.b3014186753d08da08d0.js:2:451794)[]     在TemplateParser.parse(http://localhost:3000/dist/vendor.b3014186753d08da08d0.js:2:632968)[]     在JitCompiler._compileTemplate(http://localhost:3000/dist/vendor.b3014186753d08da08d0.js:2:819358)[]     at []错误:模板解析错误:

2 个答案:

答案 0 :(得分:2)

使用下面列表中的选择器而不是mdmenutriggerfor

selector: `[md-menu-trigger-for], [mat-menu-trigger-for],
         [mdMenuTriggerFor], [matMenuTriggerFor]`,

<button md-icon-button [mdMenuTriggerFor]="menu"> <md-icon>more_vert</md-icon> </button>

注意:[md-menu-trigger-for], [mat-menu-trigger-for]已被弃用。

来源:https://github.com/angular/material2/blob/94320c4e68a8e6a2093b704157900cd6cd8388e2/src/lib/menu/menu-trigger.ts#L37-L38

答案 1 :(得分:0)

我通过两种方式解决了这个问题:

  1. 将'html-loader'替换为'raw-loader';

  2. 注释掉最小化线。

    new webpack.LoaderOptionsPlugin({
     htmlLoader: {
      minimize: DEVELOPMENT // workaround for ng2
     },
     // minimize: PRODUCTION, // Comment out this line
     debug: DEVELOPMENT,
     options: {
      context: __dirname
     }
    }),