|                            |  | // 引入bindingx,此库类似于微信小程序wxs,目的是让js运行在视图层,减少视图层和逻辑层的通信折损
const BindingX = uni.requireNativePlugin('bindingx')
export default {    methods: {        // 此处不写注释,请自行体会
        nvueScrollHandler(e) {            const anchor = this.$refs['u-scroll-list__scroll-view'].ref            const element = this.$refs['u-scroll-list__indicator__line__bar'].ref            const scrollLeft = e.contentOffset.x            const contentSize = e.contentSize.width            const { scrollWidth } = this            const barAllMoveWidth = this.indicatorWidth - this.indicatorBarWidth            // 在安卓和iOS上,需要除的倍数不一样,iOS需要除以2
            const actionNum = uni.$u.os() === 'ios' ? 2 : 1            const expression = `(x / ${actionNum}) / ${contentSize - scrollWidth} * ${barAllMoveWidth}`            BindingX.bind({                anchor,                eventType: 'scroll',                props: [{                    element,                    property: 'transform.translateX',                    expression                }]            })        }    }}
 |