Commit 7cb5234b authored by Arthur Verschaeve's avatar Arthur Verschaeve

Merge pull request #1262 from samccone/sjs/fix-angular-leaks

Fix angular directive bugs
parents ae1c00ca d1dd7e35
......@@ -49,7 +49,7 @@ dedicated version of Chromium with an embedded Dart VM.
## Compiling
```
dart2js src/main.dart -o dist/main.js
dart2js web/main.dart -o web/main.js
```
The dart2js compilator can be found in the SDK.
......
......@@ -13,5 +13,9 @@ todomvc.directive('todoEscape', function () {
scope.$apply(attrs.todoEscape);
}
});
scope.$on('$destroy', function () {
elem.unbind('keydown');
});
};
});
......@@ -16,5 +16,9 @@ angular.module('todomvc')
scope.$apply(attrs.todoEscape);
}
});
scope.$on('$destroy', function () {
elem.unbind('keydown');
});
};
});
......@@ -11,6 +11,10 @@ define(['app'], function (app) {
scope.$apply(attrs.todoEscape);
}
});
scope.$on('$destroy', function () {
elem.unbind('keydown');
});
};
});
});
......@@ -9,5 +9,9 @@ todomvc.directive('todoBlur', function () {
elem.bind('blur', function () {
scope.$apply(attrs.todoBlur);
});
scope.$on('$destroy', function () {
elem.unbind('blur');
});
};
});
......@@ -13,5 +13,9 @@ todomvc.directive('todoBlur', function () {
scope.$apply(attrs.todoEscape);
}
});
scope.$on('$destroy', function () {
elem.unbind('keydown');
});
};
});
......@@ -44,9 +44,8 @@ var todos;
function todoBlur() {
return {
link: function ($scope, element, attributes) {
element.bind('blur', function () {
$scope.$apply(attributes.todoBlur);
});
element.bind('blur', function () { $scope.$apply(attributes.todoBlur); });
$scope.$on('$destroy', function () { element.unbind('blur'); });
}
};
}
......@@ -54,7 +53,7 @@ var todos;
})(todos || (todos = {}));
/// <reference path='../_all.ts' />
var todos;
(function (_todos) {
(function (todos_1) {
'use strict';
/**
* Services that persists and retrieves TODOs from localStorage.
......@@ -71,7 +70,7 @@ var todos;
};
return TodoStorage;
})();
_todos.TodoStorage = TodoStorage;
todos_1.TodoStorage = TodoStorage;
})(todos || (todos = {}));
/// <reference path='../_all.ts' />
var todos;
......@@ -106,7 +105,9 @@ var todos;
$scope.location = $location;
}
TodoCtrl.prototype.onPath = function (path) {
this.$scope.statusFilter = (path === '/active') ? { completed: false } : (path === '/completed') ? { completed: true } : null;
this.$scope.statusFilter = (path === '/active') ?
{ completed: false } : (path === '/completed') ?
{ completed: true } : null;
};
TodoCtrl.prototype.onTodos = function () {
this.$scope.remainingCount = this.filterFilter(this.todos, { completed: false }).length;
......@@ -139,9 +140,7 @@ var todos;
this.$scope.todos = this.todos = this.todos.filter(function (todoItem) { return !todoItem.completed; });
};
TodoCtrl.prototype.markAll = function (completed) {
this.todos.forEach(function (todoItem) {
todoItem.completed = completed;
});
this.todos.forEach(function (todoItem) { todoItem.completed = completed; });
};
// $inject annotation.
// It provides $injector with information about dependencies to be injected into constructor
......@@ -166,6 +165,20 @@ var todos;
var todos;
(function (todos) {
'use strict';
var todomvc = angular.module('todomvc', []).controller('todoCtrl', todos.TodoCtrl).directive('todoBlur', todos.todoBlur).directive('todoFocus', todos.todoFocus).service('todoStorage', todos.TodoStorage);
var todomvc = angular.module('todomvc', [])
.controller('todoCtrl', todos.TodoCtrl)
.directive('todoBlur', todos.todoBlur)
.directive('todoFocus', todos.todoFocus)
.service('todoStorage', todos.TodoStorage);
})(todos || (todos = {}));
/// <reference path='libs/jquery/jquery.d.ts' />
/// <reference path='libs/angular/angular.d.ts' />
/// <reference path='models/TodoItem.ts' />
/// <reference path='interfaces/ITodoScope.ts' />
/// <reference path='interfaces/ITodoStorage.ts' />
/// <reference path='directives/TodoFocus.ts' />
/// <reference path='directives/TodoBlur.ts' />
/// <reference path='services/TodoStorage.ts' />
/// <reference path='controllers/TodoCtrl.ts' />
/// <reference path='Application.ts' />
//# sourceMappingURL=Application.js.map
\ No newline at end of file
{"version":3,"file":"Application.js","sourceRoot":"","sources":["models/TodoItem.ts","interfaces/ITodoScope.ts","interfaces/ITodoStorage.ts","directives/TodoFocus.ts","directives/TodoBlur.ts","services/TodoStorage.ts","controllers/TodoCtrl.ts","Application.ts","_all.ts"],"names":["todos","todos.TodoItem","todos.TodoItem.constructor","todos.todoFocus","todos.todoBlur","todos.TodoStorage","todos.TodoStorage.constructor","todos.TodoStorage.get","todos.TodoStorage.put","todos.TodoCtrl","todos.TodoCtrl.constructor","todos.TodoCtrl.onPath","todos.TodoCtrl.onTodos","todos.TodoCtrl.addTodo","todos.TodoCtrl.editTodo","todos.TodoCtrl.doneEditing","todos.TodoCtrl.removeTodo","todos.TodoCtrl.clearDoneTodos","todos.TodoCtrl.markAll"],"mappings":"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"}
\ No newline at end of file
{"version":3,"file":"Application.js","sourceRoot":"","sources":["models/TodoItem.ts","interfaces/ITodoScope.ts","interfaces/ITodoStorage.ts","directives/TodoFocus.ts","directives/TodoBlur.ts","services/TodoStorage.ts","controllers/TodoCtrl.ts","Application.ts","_all.ts"],"names":["todos","todos.TodoItem","todos.TodoItem.constructor","todos.todoFocus","todos.todoBlur","todos.TodoStorage","todos.TodoStorage.constructor","todos.TodoStorage.get","todos.TodoStorage.put","todos.TodoCtrl","todos.TodoCtrl.constructor","todos.TodoCtrl.onPath","todos.TodoCtrl.onTodos","todos.TodoCtrl.addTodo","todos.TodoCtrl.editTodo","todos.TodoCtrl.doneEditing","todos.TodoCtrl.removeTodo","todos.TodoCtrl.clearDoneTodos","todos.TodoCtrl.markAll"],"mappings":"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"}
\ No newline at end of file
......@@ -10,7 +10,8 @@ module todos {
return {
link: ($scope: ng.IScope, element: JQuery, attributes: any) => {
element.bind('blur', () => { $scope.$apply(attributes.todoBlur); });
$scope.$on('$destroy', () => { element.unbind('blur'); });
}
};
}
}
\ No newline at end of file
}
{
"private": true,
"scripts": {
"compile": "tsc --sourcemap --out js/Application.js js/_all.ts"
},
"dependencies": {
"angular": "^1.3.13",
"todomvc-app-css": "^1.0.0",
"todomvc-common": "^1.0.1"
},
"devDependencies": {
"typescript": "^1.5.0-alpha"
}
}
......@@ -75,11 +75,11 @@ It's definitely possible to convert the vanillajs todo app into TypeScript, but
A standalone TypeScript compiler is available on NPM.
npm install -g typescript
npm install
To compile the TypeScript in this project:
# from labs/architecture-examples/typescript-angular
tsc --sourcemap --out js/Application.js js/_all.ts
run `npm run compile`
Or use Visual Studio with the TypeScript plugin.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment