博客
关于我
微信小程序注意点
阅读量:663 次
发布时间:2019-03-15

本文共 2029 字,大约阅读时间需要 6 分钟。

微信小程序开发注意事项

1. 事件绑定

  • 不使用双花括号 {{}} 绑定事件,而是直接使用 bind:事件名="处理函数" 或用 v-bind 简写形式。
  • 示例:<button bind:tap="showInfo">显示/隐藏用户信息</button>

2. 列表循环与嵌套循环问题

  • 默认项循环:直接使用 wx:forwx:key
    {
    {item}}
  • 自定义循环名称:使用 wx:for-item
    {
    {goodslist.name}}
  • 嵌套循环:适用于多级数据绑定。
    {
    {goodslist.name}}
    {
    {goodslist.name}}——{
    {category.price}}

3. 数据绑定

  • 模型绑定:在输入框中使用 model 属性。
    {
    {content}}
  • 事件绑定:通过 bind:input 处理更新。

4. 场景值

  • 设置场景值用于在小程序启动或切换前台时执行逻辑,常用于扫码、优惠券等场景。
    App({  onShow: (options) => {    console.log("app_options", options);  }});

5. 富文本

  • 使用 rich-text 标签显示 HTML 内容。
  • 注意:不推荐使用 nodes 作为字符串,建议避免性能问题。

6. 请求封装

  • 创建统一的请求封装函数,支持多种 HTTP 方法。
    const request = {  get(url, data = {}, options = {}) {    return new Promise((resolve, reject) => {      wx.request({        url: `${baseUrl}/api/${url}`,        data,        options,        success(res) {          resolve(res.data);        },        fail(err) {          reject(err);        }      });    });  },  // 其他 HTTP 方法或示例};

7. 导航方式

  • 页面跳转
    • tabbaropen-type="switchTab"
    • 普通页面open-type="navigateTo", redirectTo, reLaunch
  • 示例:

8. 自定义组件

  • 组件由 wxml, wxss, json, js 文件组成,需在 json 中声明组件属性。
  • 示例组件注册:
    Component({  properties: {},  behaviors: [],  data: {},  methods: {}});
  • 使用示例:

9. 地图

  • 使用 map 标签,支持多种参数设置。
  • 绑定控制事件:
    bindcontroltap="controltap"

10. 摄像头

  • 使用 camera 标签,支持参数设置和事件绑定。
  • 组合使用按钮和预览:

11. 模块化开发

  • WXS 模块化:将代码抽离为独立文件,便于维护和复用。
    function hello(name) {  var msg = "hello " + name;  console.log(msg);  return msg;}module.exports.hello = hello;
  • JavaScript 模块化
    module.exports = {  hello(name) {    console.log(`Hello ${name}!`);  },  showUser(id) {    console.log(`用户id:${id}`);  }};

12. WXS 模块化

  • WXS 是一种轻量级脚本语言,能直接在 wxml 中使用。
    function hello(name) {  var msg = "hello " + name;  return msg;}module.exports.hello = hello;

13. 模板引擎

  • 使用 template 定义模板,通过 importinclude 引用。
  • 使用模板时传递数据:

转载地址:http://ziomz.baihongyu.com/

你可能感兴趣的文章
Mysql order by与limit混用陷阱
查看>>
Mysql order by与limit混用陷阱
查看>>
mysql order by多个字段排序
查看>>
MySQL Order By实现原理分析和Filesort优化
查看>>
mysql problems
查看>>
mysql replace first,MySQL中处理各种重复的一些方法
查看>>
MySQL replace函数替换字符串语句的用法(mysql字符串替换)
查看>>
mysql replace用法
查看>>
Mysql Row_Format 参数讲解
查看>>
mysql select, from ,join ,on ,where groupby,having ,order by limit的执行顺序和书写顺序
查看>>
MySQL Server 5.5安装记录
查看>>
mysql server has gone away
查看>>
mysql skip-grant-tables_MySQL root用户忘记密码怎么办?修改密码方法:skip-grant-tables
查看>>
mysql slave 停了_slave 停止。求解决方法
查看>>
MySQL SQL 优化指南:主键、ORDER BY、GROUP BY 和 UPDATE 优化详解
查看>>
MYSQL sql语句针对数据记录时间范围查询的效率对比
查看>>
mysql sum 没返回,如果没有找到任何值,我如何在MySQL中获得SUM函数以返回'0'?
查看>>
mysql sysbench测试安装及命令
查看>>
mysql Timestamp时间隔了8小时
查看>>
Mysql tinyint(1)与tinyint(4)的区别
查看>>