Ich verwende Polymer 2 und möchte Daten aus einer lokalen JSON-Datei binden. Aber jedes Mal, wenn ich es versuchte, ist es nicht möglich, nur die JSON-Datei zu holen.Nicht in der Lage, Daten von lokalen JSON an Polymer 2 zu binden
Es gibt zwei Möglichkeiten, wie ich versucht haben, es zu erreichen mit:
1) weiter verwenden
<iron-ajax url="data/employees.json" handle-as="json" last-response="{{items}}" auto>
</iron-ajax>
Ordnerstruktur:
<iron-list items="{{items}}" as="item">
<template>
<div class="item">
<b>[[item.nickname]]</b>
<p>[[item.phone]]</p>
</div>
</template>
</iron-list>
ich auch beide importiert haben Eisen-Ajax und Eisen-Liste
2) VERWENDEN Sie $.get
, um Daten von json in start zu extrahieren, und fügen Sie sie in eine Variable ein, um sie zum Anzeigen zu binden.
<script>
class IronListClass extends Polymer.Element {
static get is() {return 'iron-comp'}
ready() {
super.ready();
var that = this;
// $.get('data/employees.json', function(data) {
// that.employees = $.parseJSON(data).results;
// console.log(that.employees);
// });
$.get('data/employees.json', function(data) {
this.employees = $.parseJSON(data).results;
console.log(this.employees);
}.bind(this));
}
}
window.customElements.define(IronListClass.is, IronListClass);
</script>
versucht mit dem = dies auch.
Zunächst vielen Dank für Ihre Hilfe Immer noch nicht arbeiten, können Sie mir helfen herauszufinden, bitte statisch get properties() {re drehen { url: {type: String, value() {return "./data/employees.json"}} } } statische get Beobachter() { return [ 'checkJsonFileLoaded (items)']} checkJsonFileLoaded (j) { if (j) {this.set ('items', j); console.log (Elemente); } } Gibt 404 –
Nähte Sie haben keine JSON-Datei am angegebenen Pfad. Überprüfen Sie nach Pfad oder Datei – HakanC
Ich habe die Ordnerstruktur Bild oben im Hauptproblem zur Verfügung gestellt. Können Sie bitte einen alternativen Pfad angeben oder sehen, ob ich einen Fehler gemacht habe. Auch in VSCode, wenn ich ./data eingeben employee employee.json automatisch. Was könnte das Problem sein? –