如果指令的优先级相同,则按什么顺序编译指令



在AngularJS文档中它说(强调我的):

首先编译具有更高数字优先级的指令。链接前函数也按优先级顺序运行,但链接后函数以相反的顺序运行。具有相同优先级的指令的顺序是不确定的。默认优先级为 0。

看起来inputDirective没有设置优先级,我的自定义指令(它也具有后链接功能)也没有。为什么我的自定义指令首先在$parsers$formatters链中运行?

1.2.0rc-3之前不是这样,实际上我必须提高自定义指令的优先级才能使其解析器和格式化程序在inputDirective之前运行。

有什么见解吗?

它未定义,可能是因为由浏览器的实现来决定对象的排序方式。

正如你在这个答案中看到的:顺序是按字母顺序定义的

希望这有帮助!

最新更新