я запутался, читая статью с этого сайта (ловушкой # 5):трудно понять, вложенную область в AngularJs
http://thenittygritty.co/angularjs-pitfalls-using-scopes
http://jimhoskins.com/2012/12/14/nested-scopes-in-angularjs.html
Мой вопрос:
- это сценарий, похожий на две переменные с одним и тем же именем в простых js, один из которых определяется локально (например, внутри вложенной функции) и на е, определяемой глобально (например, windows.onload), поэтому локальная всегда переопределяет глобальную?
Я понимаю, что $ scope.variable должен ссылаться на модель, которая содержит значения, но на самом деле это не влияет на результат, если они имеют одно и то же имя, независимо от наличия точечного синтаксиса. Я не понимаю, если поставить «.». точка приведет к различию в ВЫХОДНОЙ ЗНАЧЕНИИ выше. Например, заменив их {{user.name}}. Как эта лучшая практика работает?
Следующий код с сайта пытается demostrate, если 2-й {{имя пользователя}} изменений, первый {{имя пользователя}} не изменится.
Html:
<span>Outside Controller: Your name is: {{username}}</span>
<div ng-controller="SignupController">
<span>Inside Controller: Your name is: {{username}}</span>
<fieldset legend="User details">
<input ng-model="username" />
</fieldset>
</div>
JS:
var app = angular.module('app', []);
app.controller('SignupController', function($scope){});
По-прежнему нет лучшего объяснения концепции наследования сферы, что эта wiki https://github.com/angular/angular.js/wiki/Understanding-Scopes – Chandermani