


Let's talk about the wxs module in the WeChat applet and introduce how to use it.
This article will take you to understand the wxs module in the WeChat applet and introduce the use of wxs. I hope it will be helpful to everyone!
Written before, about some thoughts:
It has been a while since we developed WeChat mini programs. I have to say that WeChat mini programs The program's API and various packaged components are indeed very powerful and save developers' time to a great extent, but for me, I prefer to write something myself. Everything is packaged in WeChat components, Development within the API can only achieve operations like a skilled worker over time.
Although the small program is also a layer of encapsulation, there is always a difference between using a ready-made one and writing it yourself. For example, relying entirely on WeChat's official packaging and self-development on the basis of native mini programs is like the difference between decorating a hardcover room and a rough room. It completely relies on WeChat's packaging. You only need to move furniture into the hardcover room. That's great, it can be said to be a quick build. Of course, I don't reject the API packaged by WeChat. After all, to some extent, their performance is better. I just hope that no matter when, I will not lose my ability to develop from scratch. After all, the front end is not just small programs.
Text:
Recently there is a need to have a slider on a page. You can drag the slider to any position on the page with your finger and release it. , the slider can automatically absorb edges.
Since DOM elements cannot be directly manipulated in the mini program, the style cannot be set directly through js. If you want the slider to quickly respond to the sliding of your finger, locating the element position through the data of the page is the same as For millisecond-level setData, a setData response requires two communications between the logic layer and the rendering layer and one rendering. The communication is relatively time-consuming. In addition, setData rendering will also block the execution of other scripts. SetData at this frequency can easily cause lag, so this solution is not feasible.
In the WeChat applet, there is an official view container called movable-view. This should be able to solve the demand. However, as mentioned above, when the performance difference is not big, I prefer I tend to write it myself, and this is an alternative.
Use of WXS
In other words, wxs is specifically used for wxml pages Yes, it implements the function of calling functions in the view layer
Calling method
Although it is explained in the WeChat documentation, Wxs is a scripting language for small programs. It has its own syntax, but most of the syntax is not much different from js. If you are interested, you can read the documentation by yourself. There are two calling methods provided in the WeChat applet. I won’t go into details here. Just paste the code directly
wxml:
<view class="main"> <view>主页</view> <wxs module="IndexWxs" ></wxs>//新建index.wxs文件,在wxs标签中自定义路径引入,IndexWxs为自定义的module名 <view change:prop="{{IndexWxs.chooseShow}}" //change:prop是起到类似observe的监听作用,当prop中的data属性有更新的时候,会触发change:prop的方法 prop="{{monitor}}" //data属性 data-navHeight="{{navHeight}}" //可以使用data-自定义传入属性 data-edge="{{edgeData}}" catch:touchstart="{{IndexWxs.touchStartByBlock}}" //要调用wxs的方法需使用{{ }} catch:touchmove="{{IndexWxs.touchMoveByBlock}}" catch:touchend="{{IndexWxs.touchEndByBlock}}"> </view> </view>
\
wxs:
var x = 0,y = 0; //viewData 使用小程序获取节点信息的方法,通过data-传入 var viewData = { height: 0,//滑块的宽高 width: 0, windowHeight: 0,//屏幕的宽高 windowWidth: 0 } var eventInstance = null module.exports = { //触摸开始 touchStartByBlock: function (event) { eventInstance = event;// event.instance为组件实例 var setViewData = event.currentTarget.dataset//获取data-传入的值 if (setViewData && setViewData.edge && setViewData.edge.windowHeight) { viewData = setViewData.edge } x = event.changedTouches[0].clientX - viewData.width/2//滑动过程中保持手指在模块中心位置 y = event.changedTouches[0].clientY - viewData.height/2 }, //触摸移动中,可以给x,y写一些边界值判断,防止滑块越界,此处不做展示 touchMoveByBlock: function (event) { x = event.changedTouches[0].clientX - viewData.width/2 y = event.changedTouches[0].clientY - viewData.height/2 event.instance.setStyle({//使用setStyle设置的样式权重比wxml设置的样式高 transform: 'translate('+x+'px'+','+y+'px)'//setStyle需使用字符串 }) }, //松开手指,触摸结束时 touchEndByBlock: function (event) { //吸边处理,判断当前手指位置在屏幕的哪一边 x = viewData.windowWidth/2 < x ? viewData.windowWidth-viewData.width : 0; y = y > viewData.windowHeight-viewData.height ? viewData.windowHeight-viewData.height : y event.instance.setStyle({ transform: 'translate('+x+'px'+','+y+'px)', }) }, //当props的monitor数据发生变化的时候触发该方法,会自动传入monitor当前值,一些业务逻辑可以在此处处理 chooseShow: function (monitor) { console.log('监听到更新,monitor=',monitor); } }
Final effect: (The Nuggets do not seem to support video. Since it was moved directly by Zhihu, it was not converted into a gif. If you want to watch the video, you can go to the Zhihu article
The basic use of wxs is probably like this. Since it is my first time to use wxs, if there are any deficiencies or errors, please feel free to correct me.
[Related learning recommendations: 小program development tutorial]
The above is the detailed content of Let's talk about the wxs module in the WeChat applet and introduce how to use it.. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











Xianyu's official WeChat mini program has quietly been launched. In the mini program, you can post private messages to communicate with buyers/sellers, view personal information and orders, search for items, etc. If you are curious about what the Xianyu WeChat mini program is called, take a look now. What is the name of the Xianyu WeChat applet? Answer: Xianyu, idle transactions, second-hand sales, valuations and recycling. 1. In the mini program, you can post idle messages, communicate with buyers/sellers via private messages, view personal information and orders, search for specified items, etc.; 2. On the mini program page, there are homepage, nearby, post idle, messages, and mine. 5 functions; 3. If you want to use it, you must activate WeChat payment before you can purchase it;

Implementing picture filter effects in WeChat mini programs With the popularity of social media applications, people are increasingly fond of applying filter effects to photos to enhance the artistic effect and attractiveness of the photos. Picture filter effects can also be implemented in WeChat mini programs, providing users with more interesting and creative photo editing functions. This article will introduce how to implement image filter effects in WeChat mini programs and provide specific code examples. First, we need to use the canvas component in the WeChat applet to load and edit images. The canvas component can be used on the page

To implement the drop-down menu effect in WeChat Mini Programs, specific code examples are required. With the popularity of mobile Internet, WeChat Mini Programs have become an important part of Internet development, and more and more people have begun to pay attention to and use WeChat Mini Programs. The development of WeChat mini programs is simpler and faster than traditional APP development, but it also requires mastering certain development skills. In the development of WeChat mini programs, drop-down menus are a common UI component, achieving a better user experience. This article will introduce in detail how to implement the drop-down menu effect in the WeChat applet and provide practical

The official WeChat mini program of Xianyu has been quietly launched. It provides users with a convenient platform that allows you to easily publish and trade idle items. In the mini program, you can communicate with buyers or sellers via private messages, view personal information and orders, and search for the items you want. So what exactly is Xianyu called in the WeChat mini program? This tutorial guide will introduce it to you in detail. Users who want to know, please follow this article and continue reading! What is the name of the Xianyu WeChat applet? Answer: Xianyu, idle transactions, second-hand sales, valuations and recycling. 1. In the mini program, you can post idle messages, communicate with buyers/sellers via private messages, view personal information and orders, search for specified items, etc.; 2. On the mini program page, there are homepage, nearby, post idle, messages, and mine. 5 functions; 3.

WeChat applet implements picture upload function With the development of mobile Internet, WeChat applet has become an indispensable part of people's lives. WeChat mini programs not only provide a wealth of application scenarios, but also support developer-defined functions, including image upload functions. This article will introduce how to implement the image upload function in the WeChat applet and provide specific code examples. 1. Preparatory work Before starting to write code, we need to download and install the WeChat developer tools and register as a WeChat developer. At the same time, you also need to understand WeChat

Use the WeChat applet to achieve the carousel switching effect. The WeChat applet is a lightweight application that is simple and efficient to develop and use. In WeChat mini programs, it is a common requirement to achieve carousel switching effects. This article will introduce how to use the WeChat applet to achieve the carousel switching effect, and give specific code examples. First, add a carousel component to the page file of the WeChat applet. For example, you can use the <swiper> tag to achieve the switching effect of the carousel. In this component, you can pass b

To implement the picture rotation effect in WeChat Mini Program, specific code examples are required. WeChat Mini Program is a lightweight application that provides users with rich functions and a good user experience. In mini programs, developers can use various components and APIs to achieve various effects. Among them, the picture rotation effect is a common animation effect that can add interest and visual effects to the mini program. To achieve image rotation effects in WeChat mini programs, you need to use the animation API provided by the mini program. The following is a specific code example that shows how to

Implementing the sliding delete function in WeChat mini programs requires specific code examples. With the popularity of WeChat mini programs, developers often encounter problems in implementing some common functions during the development process. Among them, the sliding delete function is a common and commonly used functional requirement. This article will introduce in detail how to implement the sliding delete function in the WeChat applet and give specific code examples. 1. Requirements analysis In the WeChat mini program, the implementation of the sliding deletion function involves the following points: List display: To display a list that can be slid and deleted, each list item needs to include
