【发布时间】:2025-12-03 05:40:02
【问题描述】:
AngularJS 指令以 ng- 为前缀。为什么它坚持使用前缀而不是使用实际的 xml 命名空间?
如果您选择使用旧式指令语法 ng: 则在 html 中包含 xml-namespace 以使 IE 满意。 (这里出于历史原因,我们不再推荐使用 ng:。)
使用这样的东西似乎确实有效:
<html xmlns:ng="http://angularjs.org" ng:app="my-app">
从this jsFiddle 可以看出。
但它不推荐使用它并支持它只是出于历史原因。有人可以指出这些原因可能是什么吗?来自 Flex 背景,我认为 XML 命名空间很棒,我很想利用它们,但也许 Angular 有充分的理由采用前缀方法?
【问题讨论】:
-
这对于将 AngularJS 与 SVG 一起使用很奇怪,因为 SVG 使用 XML 解析器。例如,data-* 和 ng-* 在 SVG 中是不合法的(尽管某些浏览器可能允许这样做)。但是,ng:* 在 SVG 中是合法的。 *.com/questions/15532371/…
标签: javascript xml angularjs xml-namespaces