【问题标题】:Angularjs, using data-ng-controller and ng-controller [duplicate]Angularjs,使用 data-ng-controller 和 ng-controller [重复]
【发布时间】:2013-11-03 06:40:10
【问题描述】:

有时我看到data-ng-controller,但更多时候看到ng-controller

ng-controller 我已经用过,这似乎很清楚。但是data-ng-controller.. 有什么用?

它们之间有什么区别,在哪里使用什么?

【问题讨论】:

    标签: angularjs


    【解决方案1】:

    除了验证和浏览器兼容性之外没有区别。

    Angular js 不能在 IE8 中工作,除非数据存在

    [更新]

    • 以上适用于版本 1.0.* 和 1.2.*
    • 1.3.* 不支持 ie8 所以不需要数据-

    【讨论】:

    • SharePoint 会去掉 ng 参数,因此仍需要 data-ng-*。
    【解决方案2】:

    Angularjs 使用规范化过程来匹配指令名称/属性。

    来自 http://docs.angularjs.org/guide/directive 的 angularjs 文档。

    部分匹配指令:

    归一化过程如下:

    从元素/属性的前面去除 x- 和 data-。 将 :、- 或 _ 分隔的名称转换为 camelCase。

    【讨论】:

    • 在文档中再往下一点:最佳实践:首选使用破折号分隔的格式(例如,ng-bind 用于 ngBind)。如果您想使用 HTML 验证工具,您可以改用带有数据前缀的版本(例如,用于 ngBind 的 data-ng-bind)。
    【解决方案3】:

    两者之间没有区别,除了前缀data-将允许HTML通过验证。

    【讨论】:

      【解决方案4】:

      您可能还会看到 x-ng-controller。 data- 和 x- 都符合 html5 自定义属性命名。

      【讨论】:

        猜你喜欢
        • 2016-09-04
        • 2017-11-14
        • 1970-01-01
        • 1970-01-01
        • 2017-02-02
        • 1970-01-01
        • 2014-02-17
        • 2015-12-27
        • 2014-12-23
        相关资源
        最近更新 更多