mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-03-17 07:40:22 +00:00
$route should create child scope via $new
This commit is contained in:
parent
63690d1892
commit
a5eb3ed107
3 changed files with 2 additions and 13 deletions
|
|
@ -708,7 +708,7 @@ angularServiceInject('$route', function(location) {
|
|||
if (!childScope) {
|
||||
var pathParams = matcher(location.hashPath, route);
|
||||
if (pathParams) {
|
||||
childScope = createScope(parentScope);
|
||||
childScope = parentScope.$new();
|
||||
$route.current = extend({}, routeParams, {
|
||||
scope: childScope,
|
||||
params: extend({}, location.hashSearch, pathParams)
|
||||
|
|
|
|||
|
|
@ -625,20 +625,9 @@ angularWidget('ng:include', function(element){
|
|||
return extend(function(xhr, element){
|
||||
var scope = this, childScope;
|
||||
var changeCounter = 0;
|
||||
var preventRecursion = false;
|
||||
function incrementChange(){ changeCounter++;}
|
||||
this.$watch(srcExp, incrementChange);
|
||||
this.$watch(scopeExp, incrementChange);
|
||||
scope.$onEval(function(){
|
||||
if (childScope && !preventRecursion) {
|
||||
preventRecursion = true;
|
||||
try {
|
||||
childScope.$eval();
|
||||
} finally {
|
||||
preventRecursion = false;
|
||||
}
|
||||
}
|
||||
});
|
||||
this.$watch(function(){return changeCounter;}, function(){
|
||||
var src = this.$eval(srcExp),
|
||||
useScope = this.$eval(scopeExp);
|
||||
|
|
|
|||
|
|
@ -651,7 +651,7 @@ describe("widget", function(){
|
|||
|
||||
// this one should really be just '1', but due to lack of real events things are not working
|
||||
// properly. see discussion at: http://is.gd/ighKk
|
||||
expect(element.text()).toEqual('4');
|
||||
expect(element.text()).toEqual('2');
|
||||
dealoc(element);
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue