這裏有什麼問題?綁定在Angular中不起作用
function SecondCtrl($scope, Data) {
$scope.data = Data;
$scope.reversedMessage = function(message) {
return message.split("").reverse().join("");
};
}
這裏有什麼問題?綁定在Angular中不起作用
function SecondCtrl($scope, Data) {
$scope.data = Data;
$scope.reversedMessage = function(message) {
return message.split("").reverse().join("");
};
}
正如阿倫在他的評論中提到的,你在這裏失去了幾個關鍵要素:
你不這樣引導您的應用程序。您需要使用the ng-app
directive或angular.bootstrap
。
由於您將SecondCtrl
定義爲全局函數(這不是最佳實踐),因此您需要設置JSFiddle以在onLoad
之前加載JavaScript;我用No wrap - in <head>
:
你注入Data
到控制器中,但是你有沒有定義Data
爲服務。您需要爲此登錄create a service。
以下是一個演示,如果你遵循最佳實踐,併爲您的除了控制器模塊,以固定等問題的事情會如何看一個的jsfiddle:http://jsfiddle.net/BinaryMuse/TcPGT/
<div ng-app='myApp'>
<div ng-controller="SecondCtrl">
<input type="text" ng-model="data.message">
<h1>{{ reversedMessage(data.message) }}</h1>
</div>
</div>
var app = angular.module('myApp', []);
app.value('Data', {
message: 'This is my message.'
});
app.controller('SecondCtrl', function($scope, Data) {
$scope.data = Data;
$scope.reversedMessage = function(message) {
return message.split("").reverse().join("");
};
});
你的代碼中,我認爲是不完整的.. Iam附上一個完整的代碼在這裏..通過它,我希望這是你的期望。
你缺少許多步驟...好像沒有創建模塊...控制器不添加到模塊... ...有沒有提供商'Data' –
一個簡單的示例用硬編碼的數據http://jsfiddle.net/arunpjohny/mH5uH/1/ –