当前位置: 首页 > 面试题库 >

如何在angularJS中等到$ compile结束

欧阳洲
2023-03-14
问题内容

我正在加载模板,然后使用$compile服务针对我的范围对其进行编译

var template = "<div> .. {{someCompilingStuff}} ..</div>";
var compiled = $compile(template)(cellScope);

然后在弹出窗口中使用它

cellElement.popover({
    html: true,
    placement: "bottom",
    trigger: "manual",
    content: compiled
});

我的模板非常复杂,可能要花一些时间来编译。

在弹出窗口中使用angular之前,如何确保angular完成了模板的编译?

编辑$apply()在创建弹出窗口之前,我试图将角度强制为,它确实可以工作,但会生成JavaScript错误,这对我来说是不可接受的。


问题答案:

$compile允许您使用所谓的克隆附加功能,该功能允许您将元素附加到文档。这是您可能可以使用的示例:

var template = "<div> .. {{someCompilingStuff}} ..</div>";
var compiled = $compile(template)(cellScope, function (clonedElement) {
  cellElement.popover({
    html: true,
    placement: "bottom",
    trigger: "manual",
    content: clonedElement
  });
});

参考有关$
compile使用的Angular文档



 类似资料:
  • 问题内容: 我真的对angularjs中的 $ compile 感到困惑。任何人都可以帮助我,在angularjs中使用$ compile以及在本文档之外的示例。 https://docs.angularjs.org/api/ng/service/$compile 问题答案: $ compile只是将文本编译为html。 这是示例示例

  • 问题内容: 我正在使用来自多个页面中RESTful服务的一些数据。所以我为此使用了角度工厂。因此,我需要从服务器获取一次数据,并且每次我使用该定义的服务获取数据时。就像全局变量一样。这是示例: 在我的控制器中,我将此服务用作: 根据我的要求,它对我来说很好。但是这里的问题是,当我重新加载网页时,该服务将再次被调用并请求服务器。如果在其他函数之间执行依赖于“已定义的服务”的函数,则会出现类似“某物”

  • 问题内容: 我的场景仅包含一个ImageView,显示一个图像。我想将图像淡化为黑色(场景的指定颜色),然后过一段时间后,再次从黑色淡入图像。我发现FadeTransition非常适合此目的。这是我的一部分代码: 我的问题是异步的,因此下面的代码将在退出之前开始执行。结果,我只看到第二个过渡。如何等待第一个过渡结束,然后启动第二个过渡?我无法让线程在两者之间进入睡眠状态,因为它是主要的javafx

  • 问题内容: 我在客户端有一组对象。数组中的对象如下所示: 我尝试将此数组过滤为2个数组: 类型=== 1 使用类型!== 1 我这样做: 但是不相等的方法不起作用…我该怎么办? 谢谢! 问题答案: 同样,如果您只是要使用,请改用本机方法:

  • 这是我第一次使用webClient,我想知道如何等待列表 以及以下方法: 但每次我执行它时,我总是得到一个空对象的列表,我的意思是我得到一个列表,但是列表中的每个对象都是空的(另一个类的每个字段都是空的)。有什么不对劲? UDP:更多解释:我有两个微服务。在一个微服务(返回另一个地址)中,有一个RestController发送另一个地址。在另一个微服务中,我想使用WebClient(而不是使用线程

  • 问题内容: 我想在ng-repeat中使用正则表达式。我尝试了以下代码,但无法正常工作。 我有用户数组,我只想显示类型为c5的用户。 如果我用 然后它也以“ ac5x”类型显示用户,因为它包含c5。 我怎么解决这个问题?也许还有另一种解决方案。 谢谢! 问题答案: Tosh提到的内容应该对您有用! 如果您发现自己想更频繁地使用正则表达式进行过滤,则可以创建一个自定义过滤器。像这样的小提琴使您可以指