gpt4 book ai didi

javascript - 如何使用 Promise 对象绑定(bind)聚合物模板 dom-repeat?

转载 作者:行者123 更新时间:2023-11-28 03:42:58 25 4
gpt4 key购买 nike

我尝试使用此调用 firestore 中的函数绑定(bind)下拉值,然后我使用 Promise 返回值

HTML

<template is="dom-repeat" items="{{_modOptsArry(item.modKey)}}" as="opt">
<paper-item value="{{opt.$key}}">{{opt.obj.val}}</paper-item>
</template>

JavaScript

_modOptsArry(modeKey) { 
let opts = [];
var promise = new Promise((resolve, reject) => {
firebase.firestore().collection("record").doc("s1").collection("class").orderBy('o').onSnapshot(function (querySnapshot) {
// let opts = [];
querySnapshot.forEach(function (doc) {
var model = doc.data();
opts.push({ $key: doc.id, obj: { val: model.nm } });
});
resolve(opts);
})
})
promise.then(function (result) {
return Promise.resolve(result); // Here i am returning array but in the dom-repeat it not binding values because it is returning Promise Object My Array is there inside this Promise object. how to resolve this problem..
});
}

最佳答案

有一个类似这样的函数

getDropdownItems(props, item) {
if (!this.props[item])
this._modOptsArry(item);
return this.props[item]
}

让您的 _mopOptsArry 方法将结果分配给 this.props[item];然后通知对象。像这样:

this.props[item] = yourResultArray;
this.notifyPath('props.' + item);

有一个名为 props 的属性,其值为 {}

然后在你的html中,而不是调用this._modOptsArry;调用[[getDropdownItems(props.*, item.modkey)]]

关于javascript - 如何使用 Promise 对象绑定(bind)聚合物模板 dom-repeat?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48771711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com