Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AngularJS控制器中的'this'和$ scope?

AngularJS控制器中的'this'和$ scope?

提问于 2017-12-07 03:05:21
回答 1关注 0查看 359

在AngularJS主页的“创建组件”部分,有这样的例子:

代码语言:txt
AI代码解释
复制
controller: function($scope, $element) {
代码语言:txt
AI代码解释
复制
  var panes = $scope.panes = [];
代码语言:txt
AI代码解释
复制
  $scope.select = function(pane) {
代码语言:txt
AI代码解释
复制
    angular.forEach(panes, function(pane) {
代码语言:txt
AI代码解释
复制
      pane.selected = false;
代码语言:txt
AI代码解释
复制
    });
代码语言:txt
AI代码解释
复制
    pane.selected = true;
代码语言:txt
AI代码解释
复制
  }
代码语言:txt
AI代码解释
复制
  this.addPane = function(pane) {
代码语言:txt
AI代码解释
复制
    if (panes.length == 0) $scope.select(pane);
代码语言:txt
AI代码解释
复制
    panes.push(pane);
代码语言:txt
AI代码解释
复制
  }
代码语言:txt
AI代码解释
复制
}

如何select添加方法$scope,addPane方法被添加到this。如果我改变它$scope.addPane,代码则会报错。

回答 1

帅的惊动我国

发布于 2017-12-07 07:08:39

“addPane”分配给这个的原因是因为该<pane>指令。

该pane指令确实require: '^tabs'将tab控制器对象从父指令中放入链接函数中。

addPane被赋值,this以便pane链接功能可以看到它。然后在pane链接函数中,addPane只是tabs控制器的属性,它只是tabsControllerObject.addPane。因此,窗格指令的链接函数可以访问tabs控制器对象,因此可以访问addPane方法。

我希望我的解释清楚。这很难解释。

和开发者交流更多问题细节吧,去 写回答
相关文章
AngularJS Scope 的概念、特性和用法
在 AngularJS 中,Scope(作用域)是连接控制器和视图的关键概念之一。Scope 定义了应用中的数据模型,并且在控制器和视图之间建立了双向数据绑定。本文将详细介绍 AngularJS Scope 的概念、特性和用法,并提供一些示例帮助读者更好地理解和应用。
网络技术联盟站
2023/07/05
2600
AngularJS Scope(作用域)
Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带。
陈不成i
2021/07/23
1.6K0
angularjs源码笔记(4)--scope
在ng的生态中scope处于一个核心的地位,ng对外宣称的双向绑定的底层其实就是scope实现的,本章主要对scope的watch机制、继承性以及事件的实现作下分析。
alexqdjay
2022/01/04
1.3K0
AngularJs之Scope作用域
  AngularJS 中,作用域是一个指向应用模型的对象,它是表达式的执行环境。作用域有层次结构,这个层次和相应的 DOM 几乎是一样的。作用域能监控表达式和传递事件。
用户5640963
2019/07/26
1.6K0
AngularJS 控制器
控制器是 JavaScript 对象,由标准的 JavaScript 对象的构造函数 创建。
陈不成i
2021/07/23
1.2K0
AngularJS入门心得4——漫谈指令scope
  上篇《AngularJS入门心得3——HTML的左右手指令》初步介绍了指令的概念和作用。已经和指令打过一个照面,就不会那么陌生了,今天主要介绍的是一个困扰了我很久终于想通的问题,这个问题与scope有关,可以看做是《AngularJS入门心得1——directive和controller如何通信》在scope上的补充和延伸。    小时候,老师就教会了我们盲人摸象这个成语,教导我们认识事物不能片面,缺少对于一个事物全局的认知。所以,说到指令,它的一个完整结构如下: angular.module('myA
JackieZheng
2018/01/16
2K0
AngularJS入门心得4——漫谈指令scope
AngularJS系列(二)——作用域和控制器
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
逝兮诚
2019/10/30
4770
angularJS学习之路(三)---控制器
控制器是 JavaScript 对象,由标准的 JavaScript 对象的构造函数 创建。
wust小吴
2019/07/08
6610
angularjs 控制器、作用域、广播详解
一、控制器 首先列出几种我们平常使用控制器时的几种误区: 我们知道angualrJs中一个控制器时可以对应不同的视图模板的,但这种实现方式存在的问题是: 如果视图1和视图2根本没有任何逻辑关系,这样“
柴小智
2018/04/10
2K0
angularjs 控制器、作用域、广播详解
AngularJS 中的 factory、 service 和 provider
初学 AngularJS 时, 肯定会对其提供 factory 、 service 和 provider 感到疑惑, 这三种都是提供服务的方式, 他们到底有什么区别呢?
beginor
2020/08/06
8320
[angularjs] angularjs系列笔记(四)控制器
所有的应用都有一个$rootScope,它可以作用在ng-app指令包含的所有的html元素中
唯一Chat
2019/09/10
4130
spring中的scope详解
spring容器中的bean默认是单例模式的,改成非单例模式需要在类上加上@Scope("prototype")
二十三年蝉
2018/08/01
9810
spring中的scope详解
Spring中的@scope注解
但是也可以理解成,singleton是启动创建,prototype/request/session/globalsession是动态创建。
ydymz
2018/09/10
1K0
tensorflow中的Variable Scope
TensorFlow提供Variable Scope机制来控制变量的作用域,一定程度上类似于C++中的namespace,使得相同名称的变量可以同时存在。
YoungTimes
2022/04/28
8240
Maven中Scope的分类
默认就是compile,什么都不配置也就是意味着compile。compile表示被依赖项目需要参与当前项目的编译,当然后续的测试,运行周期也参与其中,是一个比较强的依赖。打包的时候通常需要包含进去。
Ant丶
2022/03/01
8630
Spring中bean的scope
Spring容器中的bean具备不同的scope,最开始只有singleton和prototype,但是在2.0之后,又引入了三种类型:request、session和global session,不过这三种类型只能在Web应用中使用。
阿杜
2018/08/06
5810
Spring中bean的scope
[1117]maven依赖中scope=compile和provided区别
默认的scope,表示dependency(依赖)都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。适用于所有阶段,会随着项目一起发布
周小董
2022/04/13
2.7K0
OAuth 2.0中的scope和RBAC中的role有什么关系
scope是 OAuth 2.0 中的一种机制,用于限制客户端应用程序对用户帐户的访问。客户端应用程序可以请求一个或多个scope, 资源拥有者(终端用户)可以对客户端应用程序请求的scope进行拒绝、部分接受,通常是全部接受。客户端获得的访问令牌access_token将包含用户最终指示的scope。该access_token将只能访问其包含的scope限定的的资源。
程序猿DD
2023/04/04
9140
OAuth 2.0中的scope和RBAC中的role有什么关系
AngularJS 中的 controllerAs
Controller 在 AngularJS 应用中可以说是无处不在, 可以在 html 中通过 ngController 指令来指定 Controller , 语法为:
beginor
2020/08/10
9130
如何使用 AngularJS 控制器,构建出更加灵活和可维护的 Web 应用
AngularJS 是一款强大的 JavaScript 前端框架,它使用 MVVM(Model-View-ViewModel)的架构模式来进行应用程序的开发。在 AngularJS 中,控制器(Controllers)起到了连接模型和视图之间的重要角色。本文将详细介绍 AngularJS 控制器的概念、特性和用法,并提供一些示例帮助读者更好地理解和应用。
网络技术联盟站
2023/07/05
2480

相似问题

编译RunningStatistics wasnot declared inthis scope?

0124

微信第三方登录Scope参数错误或没有Scope 权限?

01.5K

如何在AngularJS中用ng-repeat迭代键和值?

2405

jQuery+AngularJS的问题?

2267

在AngularJS中如何触发指令测试中的ng更改?

2203
相关问答用户
平安资管 | 架构师擅长4个领域
擅长3个领域
腾讯云TDP | 高级后端开发工程师擅长3个领域
擅长4个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档