【问题标题】:angular 1 compile in angular 2angular 1 编译成 angular 2
【发布时间】:2017-12-08 09:19:27
【问题描述】:

在 Angular 1 中我们可以做的是

var elem = document.getElementById('#someid');
$compile(elem)($scope);

这就像魅力一样。但我无法在 Angular 2 中找到上述等价物。我真的被卡住了。

为了给你概述,我正在使用一个库 handsontable,它是一个 javascript 库,并向 dom 添加了不同的元素。现在我的元素超出了角度范围,我现在想将其包含在角度范围中

【问题讨论】:

标签: angular handsontable


【解决方案1】:

我建议你可以升级到 Angular 4,它是最稳定的版本,它具有向后兼容性。你可以使用 ComponentFactoryResolver 作为 Angular 4 中 $compile 的替代品

https://fromjami.com/2017/06/26/load-components-dynamically-at-runtime-in-angular-4/

https://angular.io/guide/dynamic-component-loader

在您的情况下,您可以使用要在运行时编译的 html 创建一个组件

【讨论】:

  • 谢谢!但我已经阅读了这份文件。我的问题是我有一个元素,我想编译它
  • @AmitpalRawat 将该 html 放入组件中并加载它。它将在运行时编译
  • 它将在编译时而不是运行时编译,因为我们必须将它添加到 entryComponents
  • @XAVI .. 可以给你概述一下,我正在使用一个库 handsontable,它是一个 javascript 库并向 dom 添加不同的元素。现在我有超出角度范围的元素,我现在想将其包含在角度范围中
  • @AmitpalRawat 我建议请编辑您的问题并将相关信息添加到上面的问题中。这样您将得到很好的解决方案和答案。Angular JS2 中也没有像 Angular 1.0 这样的范围概念.
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-06
  • 2017-05-23
  • 2018-04-25
  • 2016-04-02
  • 1970-01-01
  • 1970-01-01
  • 2016-09-26
相关资源
最近更新 更多