发表于: 2017-02-09 23:22:44

1 1495


一、今天完成的事情:

1.微信小程序今天做了一大半,主要是完成了数据的选择,这次数据的选择全部靠repeat出来了;


2.准备和大师兄一起合作完成萝卜多,分配了各自的任务,但是后面肯定还要动态调整一下!


二、明天要做的事情

1.将需求的store拆分出来,尽量能够分得细一点;

2.按照禅道上的时间,来完成各种需求,并且每天和大师兄做晨报;


三、遇到的问题:

1.在做小程序的时候,一直不知道怎么直接使用官网上的数据,直接进行遍历,后来问了沁姐才知道picker中有一个range-key属性,来给object指定一个显示的属性,只有那个属性会打印到wxml中;


2.还有就是如何让每一个change事件会有不同的change事件:最后的解决方式是在wxml中使用{{item.option[listIndex[pIndex]].name}}来打印选择的数据,并且给他设置一个最初的listIndex的值,这个值根据pIndex来选择,这个pIndex是它在item中的位数,这样每次点击之后都会改变它在这个数组中的相对位置的数据;贴上我的代码:

<view wx:for="{{score}}" wx:for-index="pIndex">

    <picker range="{{item.option}}" range-key="name" data-pindex="{{pIndex}}" value="{{listIndex[Pindex]}}" bindchange="bindPickerChange">

        {{item.name}}{{item.option[listIndex[pIndex]].name}}

    </picker>

</view>

上面是在wxml中的代码;在这段代码中药注意,我这边利用data-pindex将pIndex的值传到了下面,这样它才能再picker里面取到,它会被放在e.target.dataset.pindex里,等下在js中我们会通过这个获取到pIndex的值,还要注意我下面是通过{{item.option[listIndex[pIndex]].name}}来取到的值,listIndex[pIndex]代表的是什么呢?你可以现在看看我下面,listIndex是一个数组,它有六个,分别代表的是学历等等六个,我们通过pIndex作为下标,就能获取到他们分别的初始值,而且通过这个方法,我们每次更改的都是数组里的响应值,它每次还会从数组里获取值并且选择,这样就相当于实现了change事件的独立啦!

接下来是js中的:

var listIndex= [3,0,3,3,2,0]//这里就是我刚刚让你先看的地方,这是初始状态的值。

bindPickerChange : function(e) {

    console.log(e)

    var pIndex = e.target.dataset.pindex;//获取特殊的初始值,在html中以data-pindex传入其中

    listIndex[pIndex] = e.detail.value;//选择的时候改变数组中对应的值

    this.setData({

        listIndex : listIndex   //每个改变的时候都会改变响应的数据

    })

    console.log(listIndex);     //打印看一下数组

  }

上面是我的change事件,看注释就能知道我每一步干了什么了!


基本看了我这一篇就能知道具体应该怎么给它分页啦!我最没有想到的是创建一个数组,改变数组里的值来取值!


返回列表 返回列表
评论

    分享到