加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

仅在角度通用中将组件标记为客户端

发布时间:2020-12-17 10:25:18 所属栏目:安全 来源:网络整理
导读:使用ASPNet Angular SPA模板我试图导入NGX-Charts,但它们不能与服务器端预渲染一起使用.所以我只想通过将NGX图表模块导入app.module.browser.ts来使它们渲染客户端. 但是,当我这样做时,我得到模板解析错误: Can’t bind to ‘view’ since it isn’t a know
使用ASPNet Angular SPA模板我试图导入NGX-Charts,但它们不能与服务器端预渲染一起使用.所以我只想通过将NGX图表模块导入app.module.browser.ts来使它们渲染客户端.

但是,当我这样做时,我得到模板解析错误:

Can’t bind to ‘view’ since it isn’t a known property of ‘ngx-charts-advanced-pie-chart’.

是否有正确的方法将组件标记为仅在浏览器中呈现?如果存在,这似乎没有很好的记录.

或者,是否有正确的方法在角度通用应用程序中引用NGX-Charts?

此问题适用于未针对服务器端呈现进行优化的任何第三方模块.

解决方法是从app.module.server.ts中排除模块并导入一个虚拟模块,而不是从原始模块或至少应用程序中当前使用的模块中存根所有单元:

@Component({ selector: 'ngx-charts-advanced-pie-chart' })
class DummyAdvancedPieChartComponent {
  @Input('view') view;
}

如果正在使用的提供程序无法从原始模块导入,则它们也应该被存根.

虚拟组件和指令的替代方法是使用custom schema. NO_ERRORS_SCHEMA的使用是不合需要的,因为它也会抑制有用的错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读