收藏
回答

wxs 怎样与 js 文件传值?

想在wxs中获取到屏幕宽度,但是又不可以使用 wx.getsystemsync(),那怎样与js文件之间传值啊?是否会影响效率?

需求是想通过 <moveable-area> <moveable-view> 自定义一个类似 slider 的组件,因为通过 js 文件操作方法和设置参数的开销比较大,所以想通过wxs来实现。

最后一次编辑于  2021-02-14
回答关注问题邀请回答
收藏

5 个回答

  • brave
    brave
    2021-02-14
    // page.js
    Page({
      data: {
        sysInfo: {}
      },
      getSysInfo() { //获取数据后setData给sysInfo }
    })
    
    // page.wxml
    <view>{{filters.calcFuc(sysInfo)}}</view>
    
    // filters.wxs 定义一个calcFuc进行处理
    
    2021-02-14
    有用 1
    回复
  • 重庆安逸软件
    重庆安逸软件
    2021-02-14

    wxs可以写成为函数,页面函数传递就可以了

    2021-02-14
    有用 1
    回复
  • Vinlic
    Vinlic
    2021-02-14

    在js中setData的值可以通过wxml里调用wxs里的函数传过去,wxs效率在安卓上的执行效率和js接近,在ios上执行效率达到js的2~20倍。

    2021-02-14
    有用 1
    回复 1
    • Vinlic
      Vinlic
      2021-02-14
      主要开销是setData,它的调用涉及逻辑层与渲染层间的跨线程通信,所以要提高性能主要在这里做优化
      2021-02-14
      1
      回复
  • 跨商通
    跨商通
    2021-02-14

    是隔离的。

    wxs无法向js传值;

    js通过setData向wxs传值;

    2021-02-14
    有用
    回复 1
    • ʱªʱªʱª
      ʱªʱªʱª
      2021-05-14
      就是setData会带来性能消耗。
      2021-05-14
      回复
  • 2021-02-14

    wxs模块或者文件,是否可以有类似 js 中 onLoad 的这种方法?可以在wxs被载入wxml的时候,便给自身参数赋值呢?

    2021-02-14
    有用
    回复
登录 后发表内容
问题标签