html中呼叫angularjs函式需要加上()
如下程式碼片段沒有顯示 fullName的值。控制檯也未報錯:
html程式碼片段:
姓名: {{fullName}}
控制器程式碼片段:
$scope.fullName = function() {
var x;
console.log("here")
x = $scope.person1;
return x.firstName + " " + x.lastName;
};
在呼叫angularjs函式需要加上().不然是按照變數來顯示,而不會載入函式。
上個例子是在控制器中定義函式。下面這個例子是把函式賦值給屬性值。如果屬性值是函式的返回值,在html顯示該屬性時也需要加上()。應該理解為函式作為物件屬性,而不是將函式返回值賦給物件屬性。
html程式碼片段
姓名: {{person1.fullName()}}
控制器程式碼片段:
$scope.person1 = {
firstName: "John",
lastName: "Doe",
fullName: function() {
var x;
x = $scope.person1;
console.log("rose1");
return x.firstName +x.lastName;
}
};