AngularJS中的作用域实例分析
本文实例讲述了AngularJS中的作用域。分享给大家供大家参考,具体如下:
问题引入
使用Angular进行过一段时间的开发后,基本上都会遇到一个这样的坑:
{{name}}
把p元素和input元素绑定同一个变量,你本以为,在输入框输入内容,p中显示的肯定也是随之变化的。
然而并不是这样,不管input中的元素怎么变,p元素中的都没变化,WTF。
要说这是什么原因,那就要从Angular的作用域说起了。
作用域
每个Angular应用默认有一个根作用域$rootScope,根作用域位于最顶层,从它往下挂着各级作用域。
通常情况下,页面中ng-model绑定的变量都是在对应的Controller中定义的。如果一个变量未在当前作用域中定义,JavaScript会通过当前Controller的prototype向上查找,也就是作用域的继承。
这又分两种情况。
1.基本类型变量
{{x}}