栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么我的AngularJS指令共享作用域?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么我的AngularJS指令共享作用域?

如前面的答案中所述,AngularJS指令的默认行为是共享它们所包含的范围。此行为通过

scope
指令定义对象中的参数进行更改。

您可以在AngularJS文档的此部分中查看scope参数的文档:http :
//docs.angularjs.org/api/ng.$compile#description_comprehensive-directive-
api_directive-definition-
object


此参数具有三个选项:

  1. scope: false
    -共享指令包含的范围的默认行为

  2. scope: true
    -为指令创建一个新的作用域,其作用类似于其他子作用域,并从其父作用域原型继承

    • 参见示例1
    • scope: {}
      -创建一个不从其父范围继承原型的隔离范围

    • 参见示例2

从JSBin示例中可以看到,选项2和3都适用于您的示例。区别在于您是否要隔离新作用域。

AngularJS指南的指令部分中有一个很好的章节,说明了为什么隔离范围可以帮助使用指令创建更好的可重用模块:
AngularJS指南:隔离指令的范围



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/633281.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号