2016-08-15 36 views
0

我想構建一個簡單的網絡應用程序與外部API進行通信,第一步我希望檢查我的控制器,服務-HTML集成是否全部放置,所以我搭售將簡單變量從控制器綁定到視圖,但我得到的是{{msg}}而不是成功的綁定。角落無法綁定表達式

請稍後忽略服務現在它只是我的基金。

main.html中:

<!DOCTYPE html> 

<html > 
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
<script src="controller.js"></script> 

<head></head> 
<body ng-app="queueApi" ng-controller="MainController"> 
    <div> 
     <h1>{{msg}}</h1> 
    </div> 

</body> 
</html> 

queueservice.js

angular.module('queueApi') 
.factory('queueService', function ($resource){ 
    return $resource('http://127.0.0.1:8080/queue/:id',{id: '@id'}); 

}); 

controller.js

var app = angular.module('queueApi' , ['ngResource']); 
app.controller('MainController', function($scope,$http, queueService){ 

    $scope.msg = "Hi tom"; 
    // $scope.items = queueService.query({id:2}); //getting all from id 2 

}); 
+0

您的錯誤似乎與依賴項有關,請單擊F12並打開開發人員工具並查看主要錯誤。現在將['ngResource']更改爲[]並再次嘗試 –

回答

2

如果你看看喲你的控制檯你可以看到模塊創建中的錯誤。這是因爲ngResource模塊位於外部源文件中,而不是angular.min.js。也加上angular-resource.js

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-resource.min.js"></script>  
<script src="controller.js"></script> 
+0

您好哈姆雷特,你用什麼IDE來檢查控制檯? – Tomb

0

除了Hamlet Hakobyan's答案,你必須確保你的模塊已經包含在正確的順序。使用您的代碼結構controller.js應該先於queueservice.js

documentation

要注意的是使用angular.module( 'Mymodule中',[])將創建模塊Mymodule中和覆蓋任何現有的命名MyModule的模塊。使用angular.module('myModule')來檢索現有的模塊。