比如,我的海报对象有一个image属性,它是一个_File对象,我在js中通过get('image').get('url')能访问到,而wxml中却不可以点号链式item.image.url访问。
js代码如下:
var query = new AV.Query('Banner');
//query.include('image');
query.find().then(function (banner) {
console.log(banner[0].get('image').get('url'));
that.setData({
banner: banner
});
});
布局页面
<swiper indicator-dots="true"
autoplay="true" interval="5000" duration="1000" style="height:200px;">
<block wx:for="{{banner}}" wx:key="">
<swiper-item>
<image src="{{item.image.url}}" mode="aspectFill" class="swiper-image"/>
</swiper-item>
</block>
</swiper>
按如下的方式改造后是倒是能访问到,但写法有点累赘了
onLoad: function () {
var that = this;
var query = new AV.Query('Banner');
// query.include('image');
query.find().then(function (bannerObjects) {
var banner = [];
for (var i = 0; i < bannerObjects.length; i++) {
banner.push(bannerObjects[i].get('image').get('url'));
}
that.setData({
banner: banner
});
});
}
而相应的wxml文件,也要改为
<image src="{{item}}" mode="aspectFill" class="swiper-image"/>
类似的场景还有购物车对象,想要访问商品Goods对象中的title,price时,我是在CartList的基础上,遍历后额外地建了一个GoodsList来缓存下来,这里在购物车里才能显示它,这样很笨拙,请问应该如何优雅的解决?