我想知道angularjs中"Controller as"或"$ scope"语法之间的主要区别是什么.
$ scope将提供范围继承,有时会给我们带来奇怪的行为
<div ng-controller="firstController">
ParentController: <input type="text" ng-model="parent"/>
<div ng-controller="secondController">
ChildController: <input type="text" ng-model="parent" />
</div>
</div>
app.controller('ParentController', function ($scope) {
$scope.parent = "parentScope";
}).controller('ChildController', function ($scope) { /*empty*/ });
Run Code Online (Sandbox Code Playgroud)
a)最初,子将获取父属性,并且当我们更新父子时它将显示'parentScope'也将更新.但是如果我们现在更改了子属性,则更新父级不会修改子级,因为它有自己的scope属性.
b)如果我使用控制器作为语法更改子,也更新父.
如果我的指令使用" require"来使用不同的指令,比如说ngModel,并使用隔离范围我怎样才能使用bindToController语法并仍然能够ngModelController从控制器访问injectables()?