收藏
回答

wxml中animation=“{{animationData}}”可以是变量吗

问题模块
教程反馈

wxml文件: <view class="myView" wx:for="{{array}}"  wx:for-index="idx" wx:for-item="itemName" animation="{{itemName.animationData}}">

</view> js文件:

data: {

    array: [         {

        animationData: 'anim1'

       },

      {

       animationData: 'anim2',   

      }

    ]

}具体动画balabala。。。。 然后动画就不触发了 ..T0T.. 如果我老老实实的不用循环,而是写两个view,分别在里面写animation="{{anim1}}"和animation="{{anim2}}",动画是可以成功的... 所以我就想问一下 animation="{{xxx}}" xxx我想用个变量表示行不行?



回答关注问题邀请回答
收藏

3 个回答

  • 卢霄霄
    卢霄霄
    2019-01-10

    你export的时候设上去就行了啊,为啥要换变量呢

    this.setData({

        animationData: anim1.export()

    })

    this.setData({

        animationData: anim2.export()

    })

    this.setData({

        animationData: anim3.export()

    })


    2019-01-10
    赞同 1
    回复 4
    • 呆仔萌🐌
      呆仔萌🐌
      2019-01-10

      可能是我没表述清楚 。。 我的疑问就是:为什么我在循环里写animation="{{itemName.animationData}}"  ,和我分别写两个view里写animation="{{anim1}}" animation="{{anim2}}" 是不一样的。 他并不认为{{itemName.animationData}}代表anim1 和 anim2. 后面setData动画的export什么的 我都封装到别的方法里去了。


      2019-01-10
      回复
    • 卢霄霄
      卢霄霄
      2019-01-10回复呆仔萌🐌

      不能。。不能是变量的变量。。

      animation="{{item.animationData}}"


      list[index].animationData = anim1.export()

      或者

      let export = anim1.export()

      list[index].animationData = export

      然后setData

      2019-01-10
      1
      回复
    • 呆仔萌🐌
      呆仔萌🐌
      2019-01-10回复卢霄霄

      明白了就是不能是变量的变量 。所以只能先把名字都取好了 一个一个写  不能在循环里实现不同组件的不同动画了

      2019-01-10
      回复
    • 卢霄霄
      卢霄霄
      2019-01-10回复呆仔萌🐌

      可能会有简单的方法,不过需要看到你的页面了才行

      2019-01-10
      回复
  • 杜子李_
    杜子李_
    2019-01-10

    我咋觉得你给数组里动画赋值的时候没用setData()呢

    2019-01-10
    赞同
    回复 1
    • 呆仔萌🐌
      呆仔萌🐌
      2019-01-10

      具体动画和setData 我都写在另一个fuction 里了,没有贴上来

      2019-01-10
      回复
  • 仙森ღ₅₂₀¹³¹⁴
    仙森ღ₅₂₀¹³¹⁴
    2019-01-10

    可以啊。。你变量控制用那个呗 animation="{{isAnimate ? anim1 : anim2}}"

    2019-01-10
    赞同
    回复 11
    • 呆仔萌🐌
      呆仔萌🐌
      2019-01-10

      嗯,这样是可以哒,如果比两个还多,还有anim3和anim4 怎么办哇

      2019-01-10
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      2019-01-10回复呆仔萌🐌

      = =四元表达式。或者你页面上写 wx:if wx:elif判断


      2019-01-10
      1
      回复
    • 呆仔萌🐌
      呆仔萌🐌
      2019-01-10回复仙森ღ₅₂₀¹³¹⁴

      哈哈 ,这个可以,就是不知道具体要判断多少个,不过也够用了

      2019-01-10
      回复
    • 仙森ღ₅₂₀¹³¹⁴
      仙森ღ₅₂₀¹³¹⁴
      2019-01-10回复呆仔萌🐌

      emmmmmm

      2019-01-10
      回复
    • 抬头忘了谁
      抬头忘了谁
      2019-01-11

      这种情况用数组呀 data: {     animations: [         anim1,

             anim2,    .... ] }animation="{{animations[index]}}" 控制index就好

      2019-01-11
      回复
    查看更多(6)
登录 后发表内容