我是AngularJS的初学者,我被困在我的一个项目中。我希望用户在表单中输入的数据转换为以下格式:<<“schema:data”>>并被推送并显示在json-ld的@graph中。 这是我的html和角度代码:
angular.module("watch", [])
.controller("ctrl", function($scope) {
$scope.output = {
"@context": {
"schema": "http://schema.org/"
},
"@graph": [{
"@id": "person",
"@type": "schema:Person",
}
]
}
$scope.volatile = {};
$scope.output["@graph"][0]["schema:givenName"] = "";
$scope.$watch(function(scope) {
return scope.volatile
},
function(newValue, oldValue) {
$scope.output = newValue;
});
})
</script>
head>
<title>
reelyActive: Angular Test
</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.13/angular.min.js">
</script>
<script type="text/javascript" src="watch.js">
</script>
<link rel="stylesheet" href="style.css" />
</head>
<body ng-app="watch">
<ul>
<li><a href="product.html">Product</a></li>
<li><a href="place.html">Place</a></li>
</ul><br/><br/>
<div ng-controller="ctrl">
<form>
GivenName:
<input type="text" ng-model="volatile.givenName">
<br/>
FamilyName:
<input type="text" ng-model="volatile.familyName">
<br/>
Gender:
<input type="text" ng-model="volatile.gender">
<br/>
Nationality:
<input type="text" ng-model="volatile.nationality">
<br/>
WorksFor:
<input type="text" ng-model="volatile.worksFor">
<br/>
JobTitle:
<input type="text" ng-model="volatile.jobTitle">
<br/>
Url:
<input type="text" ng-model="volatile.url">
<br/>
Image:
<input type="text" ng-model="volatile.image">
<br/>
</form>
<h1>
Your JSON
</h1>
<p>
{{output}}
</p>
</div>
</body>
</html>
答案 0 :(得分:0)
$scope.output['@graph'].push({
"@id": "person",
"@type": "schema:Person",
});