Ich habe Probleme, Daten von Firebase zu einem Polymerelement zu bekommen.Daten von Firebase zu Polymer Element abrufen
Hier ist mein Code:
<dom-module id="bb-account-settings">
<template>
<style is="custom-style" include="shared-styles"></style>
<div class="settings-dialog">
<div class="frame">
<div class="horizontal layout">
<div>
<div class="user-image"></div>
</div>
<div class="horizontal layout">
<paper-input label="First Name" value="{{fNameSet}}"></paper-input>
      
<paper-input label="Last Name" value="{{lNameSet}}"></paper-input>
</div>
<paper-input label="Email" value="{{emailSet}}"></paper-input>
</div>
<paper-input label="Phone number" value="{{phoneSet}}" allowed-pattern="[0-9]"></paper-input>
</div>
</div>
</template>
<script>
Polymer({
is: 'bb-account-settings',
properties: {
fNameSet: {
type: String,
value: function() {
var userId = firebase.auth().currentUser.uid;
firebase.database().ref('/user/' + userId + '/UserInfo').once('value').then(function(snapshot) {
console.log(snapshot.val().fName)
return (snapshot.val().fName);
});
}
},
lNameSet: {
type: String,
value: 'test last name'
}
}
}
});
</script>
lNameSEst ist 'test Zuname' und offensichtlich in seinem Eingang ihre Put abgelegt. Sie erwarten, dass fNameSet auf die gleiche Sache, aber nein. Wenn ich es drucke (console.log), heißt es "test first name", aber es wird nicht in seinem Eingabefeld angezeigt!
Ich bin so verwirrt.
Soweit mein Verständnis von js geht, können Sie nicht etwas aus einer Rückruffunktion zurückgeben. – a1626
@ a1626 [diese] (https://www.polymer-project.org/1.0/docs/devguide/properties#configure-values) Seite zeigt, dass ich es richtig mache. –
@ZviKarp haben keine Kenntnisse mit Polymer, aber ich denke, dass Sie beginnen können, [in diesem Beitrag] (https://divshot.com/blog/web-components/building-a-qa-system-with-polymer- and-firebase /) – adolfosrs