【发布时间】:2015-10-12 13:38:52
【问题描述】:
我正在使用 ngMessages 进行表单验证。我面临的问题是我的 html 是由 javascript 动态创建的,而 angular.message.js 是在此之前加载的。所以我想在创建所有动态 HTML 元素时触发 ngMessage。
【问题讨论】:
-
这听起来像你的方法都是错误的。几乎没有理由去 Angular 之外生成 DOM 元素,当你这样做时,它应该被隔离到一个可以编译成 Angular 的指令中。如果没有一个可靠的例子来说明你正在尝试做什么以及为什么你必须超越角度,那么你所描述的情况就没有解决方案。
-
除此之外,您的措辞暗示了对角度如何运作的误解。 Angular 是 JavaScript,所以说您正在“通过 javascript”动态创建 html 是一种气味,您只是不知道如何让 Angular 帮助您完成任务。
-
我正在制作一个表单构建器,其中 HTML 由 javascript 动态生成。每当用户拖放元素时。我将这些 html 元素保存为 JSON 格式,并使用 angular sanitizer 将其呈现为 HTML。我试图找出错误,我可能发现我的 ngmessages 模块首先加载,而 ngsanitize 稍后呈现。
-
这个不会工作。您不能将角度指令绑定到由
ng-bind-html添加的元素在编译阶段已经完成,除非您可以再次触发$compile,并且在许多情况下这会导致循环引用。在尝试这种复杂的逻辑之前,您至少需要对角相位有一个非常扎实的理解。
标签: angularjs validation ng-messages