html52.com
我爱小程序-开发者交流社区

movable-view

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 需求 movable-view 客户端 6.6.5 1.9.90

movable-view在拖动的时候,边拖动边动态设置x,y坐标,之后控件会自己位移一段距离。代码如下

<movable-area style="height: 400px;width: 100%;background: red;">
    <block wx:for="{{list}}">
    <movable-view  data-index='{{index}}' bindchange='move' style="height: 50px; width: 50px; background: blue;"x="{{item.x}}" y="{{item.y}}" direction="all">
    </movable-view>
    </block>
  </movable-area>
 
 
<button class="button-right" style="width:40%;" bindtap="tap">确认</button>


Page({


/**

  * 页面的初始数据

  */

data: {

list:[],

currentPage:0

},


move:function(e){

var dataset = e.target.dataset;

var Index = dataset.index;

this.data.list[Index].x = e.detail.x;

this.data.list[Index].y = e.detail.y;

this.setData({

list:this.data.list

})

console.log(this.data.list)

},


tap:function(e){

var sign = [

{

current:this.data.currentPage,

x:0,

y:0

}

]


this.setData({

list:this.data.list.concat(sign)

})

},



})

Page({
 
  /**
   * 页面的初始数据
   */
  data: {
    list:[],
    currentPage:0
  },
 
  move:function(e){
    var dataset = e.target.dataset;
    var Index = dataset.index;
    this.data.list[Index].x = e.detail.x;
    this.data.list[Index].y = e.detail.y;
    this.setData({
      list:this.data.list
    })
    console.log(this.data.list)
  },
 
  tap:function(e){
    var sign = [
      {
        current:this.data.currentPage,
        x:0,
        y:0
      }
    ]
 
    this.setData({
      list:this.data.list.concat(sign)
    })
  },
 
 
})


网友回复

卢霄霄:

setData是个异步操作,生效的时候实际位置已经滚过去了,位移一下不是正常的吗?

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付