2013-02-23 191 views
0

我試圖用angularjs引用模型時遇到了問題。我可以讓他們中的一些人蔘考,但其他人不工作。我已經包含下面的代碼:AngularJS範圍

function DeleteCustomers($scope, func) { 
    $scope.delete = function() { 
     func.deleteCustomer($scope.customer); 
    } 
} 


function UpdateCustomers($scope, func) { 
    $scope.update = function() { 
     func.updateCustomer({ name: $scope.name2, telephone: $scope.telephone2, 
      email: $scope.email2, street: $scope.street2, 
      city: $scope.city2, zipcode: $scope.zipcode2 }); 
     } 
    } 
} 

和HTML是

<div ng-controller="UpdateCustomers"> 
     <form class="test-angular-update"> 
      <input type="text" ng-model="name2"><br> 
      <input type="text" ng-model="telephone2"><br> 
      <input type="text" ng-model="email2"><br> 
      <input type="text" ng-model="street2"><br> 
      <input type="text" ng-model="city2"><br> 
      <input type="text" ng-model="zipcode2"><br> 
      <button class="button" ng-click="update()">Update</button><br> 
     </form> 
    </div> 

    <br><br> 
    <div ng-controller="DeleteCustomers"> 
     <form class="text-angular-delete"> 
      Customer Name <input type="text" ng-model="customer"><br> 
      <button class="button" ng-click="delete()">Delete</button><br> 
     </form> 
    </div> 

所有車型從UpdateCustomers和DeleteCustomers不能夠由控制器引用。任何幫助,將不勝感激。

謝謝!

+1

這不是很清楚你的問題是什麼,你的代碼太不完整做出猜測。你能否提供一個更好的演示問題的jsFiddle? – 2013-02-23 07:17:41

+0

問題是UpdateCustomers和DeleteCustomers下的ng模型沒有被解析。因此,我無法像使用其他模型一樣通過$ scope訪問它們。 – user2101411 2013-02-23 13:34:26

回答

2

這裏有一個更可靠的應用程序結構,這可能有助於確保正確注入func服務。不知道這是你遇到的問題。

//app.js 
var app = angular.module('app', []); 

//services.js 
app.factory('func', function(){/* service code*/}); 

//controllers.js 
app.controller('DeleteCustomers', ['$scope', 'func', function($scope, func){ 
    $scope.delete = function() { 
    func.deleteCustomer($scope.customer); 
    }; 
}]);//edit had typo here missing ']' 

編輯:工作演示http://jsfiddle.net/grendian/Um3pR/

+0

嘿格林迪安,它仍然說它沒有解決.. :( – user2101411 2013-02-23 18:45:25

+0

這是我把'Module.controller('DeleteCustomers',['$ scope','func',函數($ scope,func){ $ scope。刪除=功能(){ func.deleteCustomer($ scope.customer); }; }]);'沒有運氣 – user2101411 2013-02-23 18:57:32

+0

編輯原始修復類型和包括工作演示。看看是否有幫助。 – grendian 2013-02-23 19:44:16