2014-11-08 39 views
0

我對Angular JS和mongod非常新穎。我希望能夠將一個新的成分字段推入此頁面中的特定飲料,即+按鈕所在的位置。如何添加項目作用域AngularJS

這是我的看法

My UI

這是我.jade文件block content div.container-fluid(ng-controller="DrinkController", ng-init="setDrinks(#{JSON.stringify(drinks)})") div.row div.col-md-2 div.col-md-8 h1.title Edit Drinks div.row div.col-md-3 b Name div.col-md-3 b Filename div.col-md-1 div.col-md-5 b Ingredients div.row.editRow(ng-repeat="drink in drinks | orderBy: 'name'") form(ng-submit="editDrink(drink)") div.col-md-3 input(value="{{drink.name}}", ng-model="drink.name") div.col-md-3 input(value="{{drink.image}}", ng-model="drink.image") div.col-md-1.text-right a(ng-click="addNewIngredientEd()") + div.col-md-4 div.row(ng-repeat="ingredient in drink.ingredients") div.col-md-7 select.mixers(value="{{ingredient.name}}", ng-model="ingredient.name", ng-options="i for i in ingredientsList") div.col-md-4 input.addForm.ingredient(value="{{ingredient.amount}}", ng-model="ingredient.amount", style="width: 100px;") div.col-md-1 a(ng-click="removeIngredientEdit($index)") - div.col-md-1 button.btn Save

這是我的相關JS

$scope.addNewIngredientEd = function() { 
$scope.newDrink.ingredients.push({ name: '', amount: 0 }); 

//alert("Hello! I am an alert box!!"); 
console.log('Added new ingredient Test '); 
}; 
+0

你能告訴更多的代碼?控制器是否在html中分配? – Semicolon 2014-11-08 05:00:25

+0

我添加了所有.jade文件 – dwebber 2014-11-08 05:06:26

+0

您確定要使用'ng-init =「setDrinks(#{JSON.stringify(drinks)}'而不是'ng-init =」setDrinks(#{JSON.parse(drinks )}'? – 2014-11-08 05:36:53

回答

0

你要$index,它的NG-重複的部分

addNewIngredientEd($index) 

$scope.addNewIngredientEd = function ($index) { 
    $scope.drinks[$index].ingredients.push(... 
+0

當我更改我的$ scope.newDrink.ingredients.push爲$ scope.drinks [$ index] .ingredients.push我得到錯誤的控制檯說:「類型錯誤:無法讀取屬性'成分'未定義 在Scope.DrinkController。$ scope.addNewIngredientEd「 – dwebber 2014-11-08 18:25:38

+0

這個作品謝謝你! – dwebber 2014-11-08 19:38:11

相關問題