推广 热搜: csgo  vue  angelababy  2023  gps  新车  htc  落地  app  p2p 

【小程序】微信小程序基础语法讲解(一)

   2023-07-06 网络整理佚名1330
核心提示:微信小程序中的JS主要用于实现页面的逻辑交互和数据处理等功能。下面是一个简单的微信小程序JS逻辑交互的示例:数据已经被绑定到view元素中,所以当数据更新后,页面上的消息也会相应地更新。微信小程序生命周期函数的执行顺序如下:微信小程序中常见的事件函数有:除了以上常见的事件函数外,微信小程序还提供了很多其他的事件函数,具体可以参考微信小程序开发文档。

在WXML模板中,可以使用wx:for列表渲染标签来实现按照数据周期渲染列表的效果。 以下是 WXML 模板循环的示例



  List:
  {{item.name}}

在这个例子中,我们定义了一个列表数据项,它是一个包含一些对象的数组。 在WXML中,我们使用wx:for列表渲染标签,迭代列表数组中的每个对象,并根据对象的属性渲染列表项。

在该文件中,我们定义了一个用于初始化列表数据项的函数

// index.js
Page({
  data: {
    list: [
      { id: 1, name: 'Item 1' },
      { id: 2, name: 'Item 2' },
      { id: 3, name: 'Item 3' }
    ]
  },
  onLoad: function () {
  }
})

在文件中,我们可以通过多种方式初始化数据项,比如从服务器获取数据、从本地缓存获取数据、从用户输入获取数据等等。

通过使用wx:for列表渲染标签,我们可以轻松实现按照数据周期渲染列表的效果,从而增强小程序的可用性和交互性。

3)WXSS风格

WXSS(Style)是小程序的样式语言,用于控制小程序界面的外观和布局。 它是一种 CSS 扩展语言,具有类似 CSS 的语法,但也有其自身的一些特性和限制。

WXSS 支持大多数 CSS 语法和功能,例如选择器、盒模型、浮动、定位、字体、背景、颜色、动画等。 目前支持的选择器有:

选择器

样本

样品描述

。班级

。介绍

选择所有拥有的组件

#ID

#

选择拥有的组件

看法

选择所有视图组件

,

看法,

选择所有文档视图组件和所有组件

::后

查看::之后

在视图组件后面插入内容

::

看法::

在视图组件之前插入内容

全局样式和局部样式:

如果想在多个页面或组件中使用相同的样式,可以使用小程序提供的全局样式(style)或公共样式(style)功能。 具体来说,可以在app.wxss中定义全局样式,也可以在单独的wxss文件中定义常用样式,然后在页面或组件的样式标签中引用。

定义全局样式的方法是在app.wxss中定义样式类,这些类可以在整个小程序中使用。 例如:


.global-text {
  font-size: 16px;
  color: #333;
}

然后,您可以在任何页面或组件中使用此样式类:


这是全局样式中定义的文本样式

定义常用样式的方法是在单独的wxss文件中定义样式类,然后在页面或组件的样式标签中引用它们。 例如:


.common-button {
  background-color: #00c2ff;
  color: #fff;
  padding: 10px 20px;
}

这是公共样式中定义的按钮样式

请注意,如果您使用公共样式,则需要在页面或组件中包含此文件。 例如,要在页面对象中设置字段:


Page({
  config: {
    usingComponents: {
      'common-style': '/path/to/common.wxss'
    }
  }
})

然后在页面或组件的style标签中使用@语句导入该文件:


@import 'common-style';
这是公共样式中定义的按钮样式

除了支持 CSS 语法和功能之外,WXSS 还拥有一些自己的功能和扩展,例如:

通过使用WXSS,我们可以轻松控制小程序界面的外观和布局,从而实现各种视觉效果和交互效果。

以下是基本 WXSS 样式的示例:


.page {
  background-color: #fff;
  color: #333;
  font-size: 14px;
  padding: 10px;
}
.title {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 10px;
}
.subtitle {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 8px;
}
.text {
  line-height: 1.5;
  margin-bottom: 10px;
}
.link {
  color: #00c2ff;
  text-decoration: none;
}
.link:hover {
  text-decoration: underline;
}


  这是标题
  这是副标题
  这是文本内容
  这是链接

在这个例子中,定义了一些基本样式,例如背景颜色、字体大小、边距和颜色等,并将不同的样式类应用于不同的元素。 使用样式时,只需要将相应的类名添加到相应的元素中即可。

4)JS()逻辑交互

微信小程序中的JS主要用于实现页面的逻辑交互、数据处理等功能。 以下是一些与 JS 交互的常见方式:

简而言之,微信小程序中的JS主要用于实现页面的逻辑交互和数据处理,可以通过数据绑定、事件绑定、API调用、生命周期函数、自定义组件来实现不同的功能。 需要注意的是,为了提高小程序的性能和体验,应尽量减少不必要的操作和网络请求,并避免频繁的页面数据更新。

下面是一个简单的微信小程序JS逻辑交互的例子:

1.WXML文件

{{message}}

2.JS文件

Page({
  data: {
    message: 'Hello World'
  },
  changeMessage: function () {
    this.setData({
      message: '你好,世界!'
    })
  }
})

在此示例中,我们定义了一个视图元素和一个 WXML 元素。 视图元素用于显示消息,元素用于触发事件。 在 JS 文件中,我们定义了一个名为 的事件处理程序,当用户单击按钮时会触发该事件处理程序。 该函数使用该方法更新数据,将其更改为“Hello, world!”。 由于数据已经绑定到视图元素上,当数据更新时,页面上的消息也会相应更新。

在这个例子中,我们演示了数据绑定、事件绑定和API调用的基本用法。 其中,该方法用于更新页面数据,数据更新可以在事件处理函数中实现; 用于绑定点击事件,可以在元素上使用该属性来绑定事件处理函数。

1.生命周期功能

微信小程序生命周期函数的执行顺序如下:

以页面为例,可以在.js文件中定义相应的生命周期函数:

Page({
  // 页面的初始数据
  data: {
    message: 'Hello World!'
  },
  // 生命周期函数--监听页面加载
  onLoad: function (options) {
    console.log('页面加载完成')
  },
  // 生命周期函数--监听页面初次渲染完成
  onReady: function () {
    console.log('页面初次渲染完成')
  },
  // 生命周期函数--监听页面显示
  onShow: function () {
    console.log('页面显示')
  },
  // 生命周期函数--监听页面隐藏
  onHide: function () {
    console.log('页面隐藏')
  },
  // 生命周期函数--监听页面卸载
  onUnload: function () {
    console.log('页面卸载')
  },
  // 页面相关事件处理函数--监听用户下拉动作
  onPullDownRefresh: function () {
    console.log('用户下拉刷新')
  },
  // 页面上拉触底事件的处理函数
  onReachBottom: function () {
    console.log('页面上拉触底')
  },
  // 用户点击右上角分享
  onShareAppMessage: function () {
    console.log('用户点击分享')
    return {
      title: '小程序分享',
      path: '/pages/index/index'
    }
  }
})

还可以使用相应的生命周期函数来配置组件。 需要注意的是,在小程序中,组件的生命周期功能会受到父组件的影响,具体的执行顺序会受到组件嵌套关系的影响。

2. 事件功能

在微信小程序中,事件函数是指小程序中发生事件时执行的函数,例如用户点击按钮、滑动页面、输入内容等。 可以通过wxss样式表中的bind或catch属性和wxml模板中的事件对象来绑定和触发事件函数。

微信小程序中常见的事件函数有:

和 都是用来绑定点击事件的属性,它们的区别在于事件冒泡的处理方式不同。

具体来说:

- bindtap是捕获型事件,触发事件后先执行当前元素的事件函数,再向上冒泡执行父元素的事件函数。如果父元素也绑定了bindtap事件,那么该事件也会被触发执行。
- catchtap是冒泡型事件,触发事件后先执行父元素的事件函数,再向下捕获执行当前元素的事件函数。如果当前元素绑定了catchtap事件,那么该事件会阻止冒泡,不会继续向上执行父元素的事件函数。

除了以上常见的事件函数外,微信小程序还提供了很多其他的事件函数,具体请参考微信小程序开发文档。

编写事件函数时需要注意以下几点:

需要注意的是,事件函数的触发顺序与绑定的顺序相关,即先绑定的事件函数先执行。 同时,在一个元素上绑定多个事件函数时,需要使用bind和catch来区分冒泡事件和非冒泡事件。

3. 双向绑定

微信小程序支持双向绑定的方式是使用,

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报
Powered By DESTOON