我在另一個頁面中複製了一個工作解決方案,但由於某種原因它不起作用;這是一個測試代碼:Angular應用程序無法啓動
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-controller="MyCtrl" ng-app="myapp">
<table name="commentsTable">
<tr ng-repeat="item in items = obj track by $index">
<td class="plantCell">{{items[$index].nome}}: </td>
<td class="statusCell">{{items[$index].status}}</td>
<td class="statusCell">{{items[$index].testo}}</td>
</tr>
</table>
</div>
<script language="javascript">
var app = angular.module('myapp', []);
var printOperation;
function GetFromLocalStorage(key) {
var items = localStorage.getItem(key);
console.log(items);
if (items === null) {
console.log("item null");
return null;
} else {
if (typeof items != "string") {
items = JSON.stringify(items);
}
return items;
}
}
app.controller('MyCtrl',
function($scope) {
$scope.printComments = function() {
$scope.obj = [{
"nome": "first",
"status": 1,
"testo": "Rottura rullo 1!!!"
}, {
"nome": "second",
"status": 0,
"testo": "Rottura rullo fsdfsf!!!"
}];
console.log("ricevo evento");
console.log($scope.obj);
}
console.log("assegno print operation");
printOperation = $scope.printComments;
}
);
var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
var eventer = window[eventMethod];
var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message";
eventer(messageEvent,function(e) {
console.log("ricevo messaggio");
printOperation();
},false);
</script>
出於某種原因,所有出現是:
{{項目[$指數] .nome}} {{項目[$指數] .STATUS}} {{項目[$指數] .testo}}
我有以下的錯誤,好像如果轉讓從未提出:
printOperation不是一個函數
函數($ scope)從不調用。
就像角庫不加載一樣。哪裏不對?
謝謝,我錯過了NG-應用= 「MYAPP」。我仍然遇到printOperation()的調用問題; 不幸的是我不能在塊內調用它,因爲它是由一個事件觸發的;是我的代碼semplified。我現在補充其餘的。不幸的事件似乎沒有進入角塊。 –
奇怪的是,在其他示例中,我沒有ng-app =「myapp」,它的工作原理完全相同,這就是爲什麼我沒有在這種情況下添加它。也許有一些角度的細節我想念... –
無論如何,現在我的代碼工作,出於某種原因。接收事件並調用$ scope函數。然而桌子沒有加載。我需要發佈一些類似的重新加載嗎? –