El deslizador del applet de WeChat evita el cambio manual, el deslizador evita el deslizamiento y evita dinámicamente el cambio

Hablando de lógica, probablemente haya dos situaciones

  • La primera es consultar los detalles del producto. Si la consulta tiene éxito, es necesario mostrar la tendencia de este producto y las mismas cosas buenas. Este es un cambio de pestaña

  • El segundo caso es que la consulta del producto falla y solo se muestra el mismo producto bueno.

Entonces este es un control dinámico

Comencé agregando catchtouchmove a la primera etiqueta del elemento deslizante si fallaba la consulta del producto.

//wxml

<swiper-item class="goods_price" catchtouchmove="stopChange"></swiper-item>

//js

stopChange(){
    
    
    return false
}

De hecho, es posible evitar el cambio manual, pero cuando la consulta del producto es exitosa, el deslizador no puede deslizarse para cambiar. Más tarde, pensé en agregar un límite de condición y solo devolvió falso cuando la consulta falló.

stopChange(){
    
    
    if(查询失败){
    
    
        return false
    }
}

Pero no sirve de nada, debería ser que mientras se agregue el evento catchtouchmove, no se puede deslizar

Entonces esta solución no es factible

Más tarde, pensé en un método no tan bueno, es decir, cuando la consulta falla, guardar un estado y luego, excepto por el primer elemento de deslizamiento para decidir si se muestra en función de este estado, la consulta falla, no otra Se muestran los elementos de swiper.
<swiper-item class="goods_price1">
...
</swiper-item>

<swiper-item class="goods_price2" wx:if='{
    
    {查询成功}}'>
...
</swiper-item>

Aunque este problema está resuelto, siempre siento que este método no es muy bueno.

Si hay una mejor solución, puede comentar o enviar un mensaje privado para intercambiarla.

Supongo que te gusta

Origin blog.csdn.net/glorious_future/article/details/114941937
Recomendado
Clasificación