mirror of https://github.com/vuejs/vue.git
				
				
				
			polish todo example
This commit is contained in:
		
							parent
							
								
									60bd928b56
								
							
						
					
					
						commit
						f29754131c
					
				| 
						 | 
					@ -28,7 +28,7 @@
 | 
				
			||||||
                    <li
 | 
					                    <li
 | 
				
			||||||
                        class="todo"
 | 
					                        class="todo"
 | 
				
			||||||
                        sd-each="todo:todos"
 | 
					                        sd-each="todo:todos"
 | 
				
			||||||
                        sd-show="todoFilter(todo.completed)"
 | 
					                        sd-show="todoFilter(todo)"
 | 
				
			||||||
                        sd-class="completed:todo.completed, editing:todo.editing"
 | 
					                        sd-class="completed:todo.completed, editing:todo.editing"
 | 
				
			||||||
                    >
 | 
					                    >
 | 
				
			||||||
                        <div class="view">
 | 
					                        <div class="view">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,18 +1,17 @@
 | 
				
			||||||
seed.config({ debug: false })
 | 
					seed.config({ debug: false })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var filters = {
 | 
					var filters = {
 | 
				
			||||||
    all: function () { return true },
 | 
					    // need to access todo.completed in here so Seed.js can capture dependency.
 | 
				
			||||||
    active: function (val) { return !val },
 | 
					    all: function (todo) { return todo.completed || true },
 | 
				
			||||||
    completed: function (val) { return val }
 | 
					    active: function (todo) { return !todo.completed },
 | 
				
			||||||
 | 
					    completed: function (todo) { return todo.completed }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var Todos = seed.ViewModel.extend({
 | 
					var Todos = seed.ViewModel.extend({
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    init: function () {
 | 
					    init: function () {
 | 
				
			||||||
        this.todos = todoStorage.fetch()
 | 
					        this.todos = todoStorage.fetch()
 | 
				
			||||||
        this.remaining = this.todos.filter(function (todo) {
 | 
					        this.remaining = this.todos.filter(filters.active).length
 | 
				
			||||||
            return filters.active(todo.completed)
 | 
					 | 
				
			||||||
        }).length
 | 
					 | 
				
			||||||
        this.updateFilter()
 | 
					        this.updateFilter()
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -64,9 +63,7 @@ var Todos = seed.ViewModel.extend({
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        removeCompleted: function () {
 | 
					        removeCompleted: function () {
 | 
				
			||||||
            this.todos.mutateFilter(function (todo) {
 | 
					            this.todos.mutateFilter(filters.active)
 | 
				
			||||||
                return filters.active(todo.completed)
 | 
					 | 
				
			||||||
            })
 | 
					 | 
				
			||||||
            todoStorage.save()
 | 
					            todoStorage.save()
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue