以下のアプローチに従うと、「プロパティを読み取れません」というエラーが表示されます。角形JSの構文解析がどのように行われているかを知りたい。カスタムJavascriptが実行される前に実行されるか後で実行されるか。未定義のプロパティ 'firstName'を読み取ることができません
//Angular JS code
myApp = angular.module('myApp', []);
myApp.controller('controller', function($scope)
{
$scope.student = {
firstName: "Mark",
lastName: "Smith",
//returns a string
dummyVar: (function() {
return "Hello";
}()),
fullName: (function() {
var studentObject;
studentObject = $scope.student;
return studentObject.firstName + " " + studentObject.lastName;
}())
};
});
//Html Code
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.js"></script>
</head>
<body ng-app="myApp">
<div ng-controller="controller">
First name is {{ student.firstName }}
<br><br>
Last name is {{ student.lastName }}
<br><br>
Dummy Variable is {{ student.dummyVar }}
<br><br>
Full Name is {{ student.fullname }}
</div>
<script type="text/javascript" src="function.js"></script>
</body>
</html>**
匿名関数fullnameの代わりにプレーンなjavascript関数を記述し、{{student.fullname()}}のように呼び出すとエラーになります。 – BeginnersSake