Jak utworzyć znacznik application/ld+json
script
za pomocą dynamicznie budowanego obiektu JSON w AngularJS.Znacznik skryptu AngularJS JSON-LD
To co muszę tag skryptu wyglądać
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Place",
"geo": {
"@type": "GeoCoordinates",
"latitude": "40.75",
"longitude": "73.98"
},
"name": "Empire State Building"
}
</script>
Próbowałem poniższy kod, ale nie mogę zmusić go do pracy:
HTML
<div ng-controller="TestController">
<script type="application/ld+json">
{{jsonId|json}}
</script>
{{jsonId|json}}
</div>
Controller
var myApp = angular.module('application', []);
myApp.controller('TestController', ['$scope', function($scope) {
$scope.jsonId = {
"@context": "http://schema.org",
"@type": "Place",
"geo": {
"@type": "GeoCoordinates",
"latitude": "40.75",
"longitude": "73.98"
},
"name": "Empire State Building"
};
}]);
Wyrażenie wewnątrz znacznika skryptu nie jest wykonywane. Wyrażenie poza tagu skrypt wykonuje poprawnie i wyświetla JSON
proszę zobaczyć jsfiddle
jaki sposób można stwierdzić, czy jest on wykonywany, czy nie? to tylko obiekt anon ... – dandavis
@dandavis 'json' to filtr, który wyprowadza obiekt JSON. Nie ma obiektu JSON między znacznikami skryptu, jeśli przeglądasz źródło. –