微信小程序超详细知识点总结

news2025/3/1 1:32:18

一、微信小程序特点

二、使用准备

1.注册开发者帐号

2.下载微信开发者工具

3.微信开发文档

三、项目结构

四、配置文件

1、app.json

pages 存放项目的页面

window 项目的窗口

tabBar 底部栏的配置

2、页面.json

五、小程序内置组件

逻辑视觉分区(div)

文本(span)

图片组件

选择

图标

滚动区域

幻灯片

六、模板语法

条件渲染

多重条件渲染

文本渲染

列表渲染

自定义列表渲染


一、微信小程序特点

  • 小程序依赖微信
  • 快,因为免去下载和安装
  • 小,一个包不能超过2M
  • 强,微信有什么能力它也拥有
  • 广,传播微信圈子近10亿用户

QQ 微信 支付宝 字节跳动 美团 鸿蒙 都有类似小程序

二、使用准备

1.注册开发者帐号

注册小程序帐号icon-default.png?t=M3C8https://mp.weixin.qq.com/

2.下载微信开发者工具

稳定版 Stable Build | 微信开放文档icon-default.png?t=M3C8https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

3.微信开发文档

微信开放文档icon-default.png?t=M3C8https://developers.weixin.qq.com/miniprogram/dev/framework/

三、项目结构

四、配置文件

1、app.json

pages 存放项目的页面

哪个页面在最前面,哪个页面是默认页面

window 项目的窗口

"backgroundTextStyle": "light", 背景文字:light|dark
"navigationBarBackgroundColor": "#000", 导航栏背景颜色
"navigationBarTitleText": "BLACK", 导航栏标题
"navigationBarTextStyle": "white" 导航栏文字颜色:white|black

tabBar 底部栏的配置

  "tabBar": {
    "color": "#484848",
    "selectedColor": "#109fef",
    "list": [{
      "pagePath": "pages/base/base",
      "text": "语法",
      "iconPath": "/images/home.png",
      "selectedIconPath": "/images/home-h.png"
    }]
  },

color 文字默认颜色
selectedColor 文字选中颜色
list 页面列表:

        pagePath 页面地址
        text 文本
        iconPath 图标地址
        selectedIconPath 选中图标地址

2、页面.json

"usingComponents": {} 使用组件

"navigationBarTitleText": "基础语法" 标题

"enablePullDownRefresh": true 允许下拉刷新

"backgroundColor": "#eee" 背景颜色

"backgroundTextStyle": "dark" 背景文字颜色

五、小程序内置组件

<view> 逻辑视觉分区(div)

<text> 文本(span)

user-select="true" 用户长按可选择

<image> 图片组件

src 图片地址
mode 模式:

  • scaleToFill:不保持宽高比,缩放
  • aspectFit:保持宽高比,长边优先
  • aspectFill:保持宽高比,短边优先
  • widthFix:宽不变,高自动
  • heightFix:高不变,宽自动
  • left right top bottom center:显示局部

<input>

value

placeholder 提示文本

password="true" 密码框

type 弹出不同键盘:

  • text 文本输入键盘
  • number 数字输入键盘
  • idcard 身份证输入键盘
  • digit 带小数点的数字键盘
  • safe-password 密码安全输入键盘 指引
  • nickname 昵称输入键盘

confirm-type 键盘右下角案例

  • send 右下角按钮为“发送”
  • search 右下角按钮为“搜索”
  • next 右下角按钮为“下一个”
  • go 右下角按钮为“前往”
  • done  右下角按钮为“完成”

<button> 按钮

type 颜色类型

  • primary     绿色
  • default     白色
  • warn     红色

size="mini" 行内小按钮

<switch> 切换

color 颜色

type="checkbox" 选择框

<picker> 选择

header-text 标题文本

mode

  • times 事件
  • date 日期
  • region 省市区

<icon> 图标

typesuccess, success_no_circle, info, warn, waiting, cancel, download, search, clear

size="100" 单位为px

<scroll-view> 滚动区域

scroll-x 水平

scroll-y 垂直

<swiper> <swiper-item> 幻灯片

indicator-dots="true"  是否显示提示点

autoplay="true" 自动播放

circular="true" 衔接滑动

六、模板语法

条件渲染

wx:if="{{条件}}"

多重条件渲染

wx:elif="{{多重条件}}"
wx:else

文本渲染

{{}}

placeholder="{{msg}}"  属性的渲染

列表渲染

<view wx:for="{{list}}" wx:key="index">{{index}}.{{item}}</view>

自定义列表渲染

 多层for循环 定义名称

<view wx:for="{{list}}" 
        wx:for-item="myitem" wx:for-index="myindex" 
        wx:key="myindex"
>
{{myindex}}.{{myitem}}
</view>

 注意:key值自动解构。eg:若想使用item.docid做为key,wx:key="docid"即可

<template> 模板 

定义:

<template name="user">
<view>用户名:{{name}}</view>
</template>

导入:只能导入template

<import src="..."></import>

 使用:

<template is="user" data="{{name:'mewow'}}"></template>

<include> 引入

<include src="..."></include>

相当于把src的内容拷贝一份放在当前位置,不能导入template

七、事件

事件方法

bindTap 点击

bindconfim 确认

bindchange 表单值发生变化

bindinput 表单输入

普通事件 

调用方法:

<button bindTap="showMsg">事件</button>

自定义方法:

showMsg(){}

事件传参

定义参数:

<button bindtap="showMsg" data-msg="小程序">小程序</button>

在方法中获取参数:

showMsg(e){
  let msg=e.currentTarget.dataset.msg;
  wx.showToast({
    title: 'hello '+msg,
    icon:"loading"
  })
}

八、表单双向绑定

 表单:

<input type="text" value="{{msg}}" bindinput="changeHd"/>

定义方法更新视图和data:

changeHd(e){
  let msg=e.detail.value;
  this.setData({msg})
}

九、data与更新

js方法里data数据:this.data.msg

在wxml使用:{{msg}}

更新data与视图:this.setData({key1:value1,key2:value2})

注意:this指向,在wx.xxx api里面this的wx这个对象不是当前页面

十、微信api

Page参数

data 存储数据

onload() 当页面加载中

onPullDownRefresh 下拉刷新回调函数

onReachBottom 触底回调函数

wx.xxx

wx.stopPullDownRefresh();  停止下拉刷新

wx.showToast({})  轻提示

wx.request({url,method,success(){}}) 网络请求:

  • 默认请求地址需要在后端配置
  • 默认请求地址要求https

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/404967.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序反编译简易教程与wxappUnpacker使用

文章目录前言一、工具准备1 解密工具2 逆向工具二、解密小程序1.确认小程序包位置2.打开一个小程序&#xff0c;3.解密小程序包三、逆向小程序1 安装依赖2 正式逆向3 其它人视频教程前言 方便微信小程序开发者&#xff0c;对前端思路的学习。所以必须学会小程序反编译技能。用…

【微信小程序】web-view 无法打开该页面不支持打开

本文相关文献&#xff1a; https://developers.weixin.qq.com/community/develop/doc/00084a350b426099ab46e0e1a50004?%2Fblogdetail%3Factionget_post_info 问题&#xff1a; 小程序开发时遇到了一个问题 我在正式上线版小程序使用 web-view 组件测试时提示&#xff1a;“无…

Vue2 跨域问题报错AxiosError net::ERR_FAILED、 Network Error、ERR_NETWORK

请求场景&#xff1a; 当前页面URL&#xff1a;http://127.0.0.1:8000/testcase 跳转请求页面URL&#xff1a;http://127.0.0.1:5000/testcase_orm 使用axios请求 时 页面提示跨域报错 跨域报错信息 Access to XMLHttpRequest at ‘http://127.0.0.1:5000/testcase_orm’ from…

前端面试题汇总(含答案)(JS篇)

主要自用&#xff0c;持续更新&#xff0c;相同类型的题目尽量放在了一起&#xff0c;参考的实在太多了就没有列出&#xff0c;侵权烦请联系删除。提示&#xff1a;自动生成的目录在页面右边---------->>>>>>>>>>>>>>>> Js的…

Node.js安装与配置(详细步骤)

前言 本篇博文记录了Node.js安装与环境变量配置的详细步骤&#xff0c;旨在为将来再次配置Node.js时提供指导方法。 另外&#xff1a;Node.js版本请根据自身系统选择&#xff0c;安装位置、全局模块存放位置和环境变量应根据自身实际情况进行更改。 Node.js安装与配置一、安装…

【独自开】--开发出属于自己的一套专属系统

文章目录前言独自开简介优秀案例独自开的使用平台福利及赚钱渠道平台福利赚钱渠道总结注册链接&#xff1a;前言 大家好&#xff0c;最近发现了一个宝藏开发平台&#xff0c;而且特别好用&#xff0c;今天就分享给大家&#xff1b; 这款开发平台名称为&#xff1a;《独自开》&a…

蓝桥冲刺31天之第八天

有人喜欢你&#xff0c;有人讨厌你&#xff1b; 有人在乎你&#xff0c;有人轻视你&#xff1b; 有人赞美你&#xff0c;有人批判你。 尊重所有的声音&#xff0c;但只成为自己&#xff1b; 不必借光而行&#xff0c;你我亦是星辰。 迷宫 只有一个题&#xff0c;迷宫&#x…

C. Celex Update(数学题)

C. Celex Update&#xff08;数学题&#xff09;一、问题二、分析三、代码一、问题 二、分析 这道题简单的来说就是在图上给定我们起点和终点&#xff0c;从起点到终点会有很多路径&#xff0c;不同的路径会经过不同的点&#xff0c;一条路径上经过的点可以计算出一个和&#…

第十一届——8走方格(找规律,规律总结)

题目&#xff1a;试题 H: 走方格时间限制: 1.0s 内存限制: 256.0MB 本题总分&#xff1a;20 分【问题描述】在平面上有一些二维的点阵。这些点的编号就像二维数组的编号一样&#xff0c;从上到下依次为第 1 至第 n 行&#xff0c;从左到右依次为第 1 至第 m 列&#xff0c;每一…

计算机科学导论笔记(八)

十、软件工程 软件工程是指合理利用工程方法和原则写出能在真实机器上工作的可靠软件的过程。 10.1 软件生命周期 软件生命周期是软件工程中的基础概念&#xff0c;软件和其他产品一样&#xff0c;周期性地重复着一些阶段。 软件开发完成之后&#xff0c;通常需要使用一段时…

【25】Verilog进阶 - 序列检测

VL25 输入序列连续的序列检测 本题并不难【中等】难度给高了 【做题关键】 (1)需要使用移位寄存器的思路。其实reg型是寄存器,也可以当做是移位寄存器,重要的是对其的处理,使用的是移位寄存器的思路 (2)注意新移入数据存放在低位 1 题目 + 代码 + TestBench 很简单,没…

大数据集群保姆级安装教程——Centos集群(vagrant+virtualbox篇)

大数据集群保姆级安装教程——Centos集群&#xff08;vagrantvirtualbox篇&#xff09; 操作系统与软件版本介绍&#xff1a; 项目版本操作系统windows 10 x64Vagrantvagrant_2.2.19_windows_amd64.msiVirtualBoxVirtualBox-6.1.42-155177-Win.exe 一、Vagrant 安装教程 1.1…

一天搞定《AI工程师的PySide2 PyQt5实战开发手册》

PySide2/PySide6、PyQt5/PyQt6&#xff1a;都是基于Qt 的Python库&#xff0c;可以形象地这样说&#xff0c;PySide2 是Qt的 亲儿子(Qt官方开发的) &#xff0c; PyQt5 是Qt还没有亲儿子之前的收的 义子 &#xff08;Riverbank Computing这个公司开发的&#xff0c;有商业版权限…

vscode通过ssh连接ubuntu系统

折腾了好久&#xff0c;终于能够远程连上了&#xff0c;开心的记录一下哈哈( •̀ ω •́ )✧ 1.Ubuntu端 先把虚拟机网络适配器改为桥接模式。 通过ifconfig命令查看虚拟机的IP地址&#xff0c;如果没有该命令则先安装net-tools&#xff0c;记录当前的IP地址。 rootRobotM…

ROS项目的GDB调试

首先安装gdb和xterm sudo apt install xterm Ubuntu系统一般默认自带gdb&#xff0c;通过 gdb -v 看看有没有输出&#xff0c;有版本输出则已安装&#xff0c;就不用再安装了 sudo apt install gdb 开启编译选项 使用Debug调试&#xff0c;首先需要在程序编译时 加上debu…

自主HttpServer实现(C++实战项目)

文章目录项目介绍CGI技术概念原理设计框架日志文件TCPServer任务类初始化与启动HttpServerHTTP请求结构HTTP响应结构线程回调EndPoint类EndPoint主体框架读取HTTP请求处理HTTP请求CGI处理非CGI处理构建HTTP响应发送HTTP响应接入线程池简单测试项目扩展项目介绍 该项目是一个基…

Python 算法交易实验53 Step2.1 Signals 信号生成

说明 上次提到了基于传统的趋势法构建一组基础信号的方法&#xff0c;并做了简单的交易测算。本次计划对方法和测算做一下Review&#xff0c;同时明确接下来基于ADBS(Step2)进行承接时需要计算的数据。 内容 1 方法回顾 传统的趋势方法(SMA-LMA)采用“短线上升且突破长线买…

Spring Security Oauth2以及整合sso

Oauth2认证 第三方认证技术方案最主要是解决认证协议的通用标准问题&#xff0c;因为要实现跨系统认证&#xff0c;各系统之间遵循一定的接口协议。 Oauth协议为用户资源授权提供了一个安全的&#xff0c;开放的而又简单的标准&#xff0c;同时&#xff0c;任何第三方都可以使用…

【Linux系统编程】08:信号量

信号量 OVERVIEW信号量1.mmap内存映射2.semget信号量获取3.semctl信号量控制4.semop信号量操作5.使用案例1.mmap内存映射 mmap映射的是磁盘中的文件&#xff0c;而共享内存是将内存映射到用户的进程空间中 原型&#xff1a;void *mmap(void *addr, size_t length, int prot, …

DHCP中继配置

1. 实验目的 熟悉DHCP中继的应用场景掌握DHCP中继的配置方法2. 实验拓扑 DHCP中继配置实验拓扑如图15-10所示: 图15-10:DHCP中继配置 3. 实验步骤 IP地址的配置AR1的配置 <Huawei>system-view