gpt4 book ai didi

javascript - AngularJS 和正确使用 ngCloak

转载 作者:数据小太阳 更新时间:2023-10-29 05:33:44 25 4
gpt4 key购买 nike

引用关于 ngCloak 指令(AngularJS documentation)的评论之一:

It is only really needed on your "index.html" page, because the browser may try to render things before Angular has had a chance to parse/compile it. At runtime, when Angular pulls in content due to ng-view, ng-include, etc., it will be processed by Angular before the browser renders.

我在 jsFiddle 中创建了一个示例为了验证这一点,令我惊讶的是,表达式在浏览器中呈现之前没有被评估。我希望模板首先被编译和链接,然后附加到 DOM - 但事实并非如此。

这是否意味着模板中的每个 {{expression}} 也应该包含在 ngCloak 中以防止闪烁或者我是否遗漏了什么?

最佳答案

我的猜测是警报允许浏览器在 Angular 完成他的工作之前渲染,添加一个 0 延迟的 setTimeout 显示渲染的模板:

http://jsfiddle.net/g/FLZZR/5/

function TemplateController ($scope) {    
$scope.expression = "This should already be rendered...";
setTimeout(function(){
alert("... but it isn't.");
});
}

附加说明:您不能期望模板在您放置警报时呈现,充其量它会被隐藏, Angular 使用脏检查来发挥它的魔力,您必须让它“消化”您的更改它们显示在 DOM 中。

关于javascript - AngularJS 和正确使用 ngCloak,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17088303/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com