使用<movable-view>发现的BUG
发布于 6 年前 作者 naqiu 6803 次浏览 来自 问答

1、在<movable-area>组件内生成2个<movable-view>,如果只移动其中一个<movable-view>,此时再次生成一个新的<movable-view>就会报错。

2、有没有办法能在新生成<movable-view>时,保存旧的已移动的<movable-view>的位置?目前每次移动后,再次生成时就会所有<movable-view>都回到原点。

2 回复

方便留个微信或QQ吗?我这边实现发现移动图片后setData会跟不上速度,跟你了解详细一些

<block wx:for=’{{item.arrImg}}’ wx:key=‘i’ wx:for-item=“arrImg” wx:for-index=“img”>

    <movable-view x=’{{arrImg.x}}’ y=’{{arrImg.y}}’ bindchange=‘recordXY’ >

        <image src=’{{arrImg.img}}’ mode=‘widthFix’ />

    </movable-view>

</block>

我的也是点击创建图片,上边是渲染,这个是创建图片的函数,

recordXY:function(e){

    var currentPage=this.data.currentPage;

    var mainArr = this.data.mainArr;

    var x = e.detail.x;

    var y = e.detail.y;

    var that = this;

    var id = e.currentTarget.dataset.id;

    var type = e.currentTarget.dataset.type;

    if(type==“img”){

        mainArr[currentPage].arrImg[id].x=x;

        mainArr[currentPage].arrImg[id].y=y;

    }

    this.setData({mainArr:mainArr})

},

recordXY是记录每一个元素的x,y   希望对你有帮助

我写过一个这个,每次移动后记录当前元素的x,y,赋值给元素本身即可,x和y在bindchange里能获取到

报错的原因 你自己排查一下那个函数吧

回到顶部