[WeChat applet] datos, métodos y propiedades del componente

inserte la descripción de la imagen aquí

Uno, datos, métodos y propiedades.

1. datos datos

En el componente del subprograma, los datos privados utilizados para la representación de la plantilla del componente deben definirse en el nodo de datos:

2. método de métodos

En los componentes del subprograma, los controladores de eventos y los métodos personalizados deben definirse en el nodo de métodos

在组件的 .json 文件中新增如下配置
{
    
    
"styleIsolation":"isolated"
}
// components/test/test.js
Component({
    
    
// 组件的初始数据
data: {
    
    
count:

},
})
methods: {
    
     //组件的方法列表【包含事件处理函数和自定义方法】
addCount() {
    
    //事件处理函数
this.setData({
    
     count: this.data.count + 1})
this._showCount() //通过this 直接调用自定义方法
}
},
_showCount(){
    
     //自定义方法建议以_开头
wx.showToast({
    
    
title:'count值为:' + this.data.count,
icon:'none'
})}
})
<view>
count的值是:{
   
   {count}}
</view>
<button bindtap="addCount">+1</button>

3. atributo de propiedades

En el componente de applet, las propiedades son las propiedades externas del componente, que se utilizan para recibir los datos pasados ​​al componente desde el mundo exterior.

4. La diferencia entre datos y propiedades

En los componentes del applet, el atributo de propiedades y los datos de datos se utilizan de la misma manera, se pueden leer y escribir, pero los datos tienden más a almacenar los datos privados del componente y las propiedades tienden a almacenar los datos. pasado al componente desde el mundo exterior

// components/test/test.js
Component({
    
    
/**
* 组件的属性列表
*/
properties: {
    
    
max: {
    
     // 完整定义属性的方式【当需要指定属性默认值时,建议使用此方式】
type:Number, //属性值的数据类型
value:10 //属性默认值
},
max:Number //简化定义属性的方式【不需要指定属性默认值时,可以使用简化方式】

}
})
<my-test1 max="10"></my-test1>
// components/test/test.js
Component({
    
    
showInfo() {
    
    
console.log(this.data); //输出结果: {count:0,max:10}
console.log(this.properties); //输出结果:{count:0,max:10}
// 结果为true 证明 data数据和properties属性【在本质上是一样的,都是可读
写的】
console.log(this.data === this.properties);
}
}
})

5. Use setData para modificar el valor de las propiedades

Dado que, en esencia, no hay diferencia entre los datos de datos y el atributo de propiedades, el valor del atributo de propiedades también se puede usar para representar la página, o usar setData para reasignar las propiedades en las propiedades, y usar el valor del atributo de propiedades en el .wxml del componente

en el componente

1 <view>max属性的值为:{
   
   {max}}</view>
// components/test/test.js
Component({
    
    
/**
* 组件的属性列表
*/
properties: {
    
    
max: {
    
     // 第二种完整定义属性的方式【当需要指定属性默认值时,建议使用此方式】
type:Number, //属性值的数据类型
value:10 //属性默认值
},
max:Number //第一种,简化定义属性的方式【不需要指定属性默认值时,可以使用简化方
式】
},
/**
* 组件的方法列表
*/
methods: {
    
     //组件的方法列表【包含事件处理函数和自定义方法】
addCount() {
    
    //事件处理函数
if(this.data.count >= this.properties.max) return
this.setData({
    
    
count: this.data.count + 1,
max:this.properties.max +
})
this._showCount() // 通过this 直接调用自定义方法
},
_showCount(){
    
     // 自定义方法建议以 _开头
wx.showToast({
    
    
title:'count值为:' + this.data.count,
icon:'none'
})
},
showInfo() {
    
    
console.log(this.data);
console.log(this.properties);
console.log(this.data === this.properties);
}

Supongo que te gusta

Origin blog.csdn.net/2301_76710810/article/details/130217409
Recomendado
Clasificación