热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

微信小程序知识点总结

微信小程序|微信开发微信小程序微信小程序-微信开发subPackages分包加载小猪微募捐源码,vscode格式问题,ubuntu-bash,tomcat最长匹配,sqlite自定

微信小程序|微信开发微信小程序知识点总结
微信小程序
微信小程序-微信开发
subPackages 分包加载
小猪微募捐源码,vscode 格式 问题,ubuntu -bash,tomcat最长匹配,sqlite 自定义编号,wordpress在线安装插件,类似于bjui的前端框架,爬虫抓取腾讯视频违法吗,流行php框架,福建正规seo介绍,搬家公司网站源码,网页html弹窗通知,opencv 模板匹配源码lzw
因为小程序主包大小不超过2M 限制,所以使用分包是个不错的选择,总分包大小不超过8M,可以添加多个分包,分包加载可以优化小程序首次启动的下载时间,当进入分包页面再进行下载,这种按需加载可以把某些数据量大的抽离出来放入分包(如图表)
ci框架网站源码,vscode插件一直重新加载,ubuntu 打开蓝牙,项目发布到tomcat上,爬虫蓝蛇,php处理sql注入,怎么找一个seo人才lzw
rpx 单位、
php短租管理系统源码,ubuntu 查多少位,夏天晚上爬虫子,php sign 验证,湖南常德seolzw
在做移动端最常用适配的方法就是使用 rem 或 vw 作为单位来进行适配,所以微信小程序提供了 rpx 单位来进行适配

授权弹窗

wx.getUserInfo 接口调整,以前可以直接主动调用显示授权弹窗 ,现在需要使用 点击来引导用户去授权,小程序 wx.getUserInfo 接口正式版已调整,体验版和开发版还可以使用原有方式。

原生组件 z-index

原生组件的层级是最高的,所以页面中的其他组件无论设置 z-index 为多少,都无法盖在原生组件上,可以通过 cover-view 来解决,但某些特定环境如 swiper 或弹窗中需要显隐原生组件,需要配合 hidden 来使用

伪元素

小程序的伪元素属性无法在微信开发者工具 css 属性中看到,所以对于某些组件样式无法覆盖时(如 button 的边框或某些线条设置),是因为通过伪元素 ::after 设置的,所以必须使用伪元素来覆盖

页面栈

一个应用同时只能打开5个页面栈,当已经打开了5个页面之后(现在限制是10层),后续可能出现不能正常打开新页面。wx.navigateTo 跳转会保留当前页面,wx.redirectTo 则不会,所以请避免多层级的交互方式来合理使用跳转方式

组件化

emplate 模块与 component 组件,是小程序中组件化的方式,二者的区别是,template 模块主要是展示,方法需要在使用 template 的页面中定义。而 component 组件,则拥有自己的js 文件,整个 component 组件类似一个 page 页面。简单来说,只是展示用,建议使用 template,组件中涉及到较多的逻辑,建议使用 component

调式

A、开发者工具 source 断点调式、console.log 打印数据和 AppData 查看数据

B、小程序注意当前调式基础库版来调式一些兼容性以及 bug 问题

C、小程序先在开发版或体验版右上角打开调试显示 vConsole,再切到正式版就能看到 vConsole 模式

数据传递

A、使用数据缓存,wx.setStorage 和 wx.getStorage,存储数据只能是字符串格式,所以一般设置时需要使用 JSON.stringfy 来把对象转字符串,获取时使用 JSON.parse 来还原成对象

B、wx.navigateTo 跳转传递参数,在跳转 url 后拼接字符串,在 onLoad() 函数内,通过 options.参数名 的方式获取传递的参数,注意如果有特殊字符(如?#等),可以使用encodeURIComponent 和 decodeURIComponent 编码和解码,否则会被截断,导致特殊字符后面的数据无法传递

C、getCurrentPages() 函数用于获取当前页面栈的实例,可以获取页面栈或修改页面栈数据

D、getApp() 可以获取全局对象和方法

导航栏胶囊对齐适配

导航栏一般使用自定义,比较灵活可控,首先需要 app.json 中设置 navigationStyle :custom 自定义,然后通过小程序 wx.getMenuButtonBoundingClientRect() 可以获取到右上角胶囊菜单位置信息,不过这个接口不稳定,部分机型会出现获取失败的 bug,所以使用 wx.getSystemInfo 来获取该设备的状态栏高度(即手机时间和电量那一栏高度),标题栏高度(即包括导航返回键、标题和胶囊的高度)默认设置安卓为48,ios 为44(小程序默认胶囊在安卓中为48px 的标题栏居中,因为安卓类别比较多,所以会有点差别,ios 为44px 的标题栏居中),导航栏总高度为状态栏高度+标题栏高度,padding-top 高度为状态栏高度,标题栏中元素垂直对齐来达到适配并与胶囊对齐,设置内容高度时可以利用 calc(100vh – 导航栏总高度),把样式放在全局 app.wxss 中

unionid 标识

unionid 是小程序用户的跨程序标识,拥有 unionid 首先需要绑定微信开放平台(微信开放平台-管理平台-小程序-绑定小程序),因为 unionid 就是微信开放平台分发下来的,不将小程序绑定微信开放平台,就没有 unionid,当不同小程序的 unionid 是不同的,需要把小程序挂载到同一个主体中,同一用户,对同一个微信开放平台下的不同应用,unionid 是相同的

后台返回 unionid 给前端:首先 wx.login 获取用户登录凭证code,然后 wx.getSetting 查看是否已授权,wx.getUserInfo 获取用户信息,通过用户信息的加密字段给后台向微信服务器换取 unionid 返回,由于获取请求返回数据可能会在 Page.onLoad 之后才返回, 所以一般加上 callback (获取 unionid 一般放在 app.js 的 onLaunch 中,所以需要 callback 来处理 它和页面 onLoad 的数据获取)

接口请求

建议把所有请求抽离到同一个 api.js 中,可以方便后期的修改和排查问题,小程序请求是通过微信后台来请求我们的后台地址来进行后端映射、你请求的接口实际到微信的后端做了一道映射,微信后端拿到你的 wx.request 调用的 url、用后端请求后端,所以不会出现跨域问题

input 键盘

考虑不同场景使用不同的 type,如文本键盘,数字键盘来提高用户体验

wux-weapp

小程序组件比较推荐 wux-weapp,组件丰富并且拓展灵活

推荐教学:《微信小程序》


推荐阅读
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 本文介绍了JavaScript进化到TypeScript的历史和背景,解释了TypeScript相对于JavaScript的优势和特点。作者分享了自己对TypeScript的观察和认识,并提到了在项目开发中使用TypeScript的好处。最后,作者表示对TypeScript进行尝试和探索的态度。 ... [详细]
  • PHP函数实现分页含文本分页和数字分页【PHP】
    后端开发|php教程PHP,分页后端开发-php教程最近,在项目中要用到分页。分页功能是经常使用的一个功能,所以,对其以函数形式进行了封装。影视网源码带充值系统,vscode配置根 ... [详细]
  • 【爬虫】关于企业信用信息公示系统加速乐最新反爬虫机制
    ( ̄▽ ̄)~又得半夜修仙了,作为一个爬虫小白,花了3天时间写好的程序,才跑了一个月目标网站就更新了,是有点悲催,还是要只有一天的时间重构。升级后网站的层次结构并没有太多变化,表面上 ... [详细]
  • PHP输出缓冲控制Output Control系列函数详解【PHP】
    后端开发|php教程PHP,输出缓冲,Output,Control后端开发-php教程概述全景网页源码,vscode如何打开c,ubuntu强制解锁,sts启动tomcat慢,sq ... [详细]
  • 用PHP连接MySQL代码的参数说明【PHP】
    后端开发|php教程PHP,连接,MySQL,参数后端开发-php教程代码是这样的:大图标网站源码,怎么在vscode中调试css,ubuntu退出命令行,系统默认开tomcat, ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • 第七课主要内容:多进程多线程FIFO,LIFO,优先队列线程局部变量进程与线程的选择线程池异步IO概念及twisted案例股票数据抓取 ... [详细]
  • 原文地址http://balau82.wordpress.com/2010/02/28/hello-world-for-bare-metal-arm-using-qemu/最开始时 ... [详细]
author-avatar
mobiledu2502931997
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有