Vuoi creare un'app molto semplice che abbia entrambe delle pagine html ma consentirà un api poiché l'output è solo alcuni calcoli effettuati da js.
Voglio rendere un output json dal mio controller e non renderizzare il file html. Qualche idea su come farlo con angularjs?
risposte:
2 per risposta № 1Il problema è che un documento JSON sarà una singola richiesta, in cui il contenuto restituito ha un tipo di contenuto application/json
.
Se vuoi angolare.js, che è una libreria frontend, devi fare una richiesta per un documento HTML (e renderizzare il markup HTML necessario nel processo), quindi per la libreria angular.js. Ciò che viene visualizzato in seguito è ancora HTML (tipo di contenuto: text/html
).
Quindi la risposta è: no, non puoi farlo con Angular.js.
Sarà necessario uno script sul lato server per generare un JSON formattato correttamente (e nient'altro) e il corretto Content-Type
intestazione.
0 per risposta № 2
Ecco un modulo AngularJS chiamato json
. Usalo come filtro nel tuo output.
Utilizzo (nel bind modello HTML):
{{ json_expression | json }}
Utilizzo (in JavaScript):
$filter("json")(object)
Dove il object
è
Qualsiasi oggetto JavaScript (compresi array e tipi primitivi) da filtrare.
Esempio:
<pre>{{ {"name":"value"} | json }}</pre>
Produzione:
{
"name": "value"
}