勘探-微信小程序

哑火多态
• 阅读 2355

mini-program

勘探-微信小程序

注册小程序账号

前往官网注册--流程简单,不赘述.

在网站的“设置”-“开发者设置”中,得到AppId

下载开发者工具

mac

window 32

windows 64

通过开发者工具创建小程序

勘探-微信小程序

文件结构

勘探-微信小程序

小程序有全局的配置、样式、逻辑也有每个页面自己的配置、样式、逻辑文件

app.json: 全局配置--(小程序公共设置)

app.js: 全局配置--(小程序逻辑)

app.wxss: 全局配置--(小程序公共样式)

pages: 页面数组--(小程序可单独有自己的配置、样式、逻辑文件,还有一个页面结构文件)

配置部分注意项~

配置部分相对简单,So 只列出如下注意点,顺带附上个人配置:

为了方便开发者减少配置项,我们规定描述页面的这四个文件必须具有相同的路径与文件名。

每增加一个页面,必须在全局app.json文件pages参数下增加对应路径配置!

如果有菜单项,强制要求控制在2-5个!

如果配置菜单必须把小程序初始页面配成菜单list其中一个,否则无法显示菜单!!

勘探-微信小程序

逻辑层

函数 出现位置 可能值 说明
App() app.js 1. 小程序生命周期函数<br/>2. 自定义函数<br/>3. 数据 1.其中自定义函数和数据为全局的<br/> 2.本文件内通过this调用自定义函数和数据,其他文件需要getApp()或者实例后调用
Page() pages下的页面内 1. 初始数据<br/>2.页面生命周期函数<br/>3.自定义函数<br/>4.数据 1. Page.prototype.route可以获取当前路由路径<br/>2.Page.prototype.setData()可更改数据,并相应到视图层,<br/>直接修改this.data不会更新到页面,且单次设置数据不能超过1024kb。
模块化 1.module.exports(推荐) 2.exports 1. 文件具有单独作用域<br/>2.可以抽离公共代码module.exports 或者 exports对外暴露接口<br/>3.不支持绝对路径以及node_modules
路由 在小程序中所有页面的路由全部由框架进行管理。
场景值 自行查看文档
API 自行查看文档
有兴趣的话可以自行去了解一下 【前台、后台定义】以及【销毁小程序的时机】

老规矩,剩下的列出需要注意的点:

App() 必须在 app.js 中注册,且不能注册多个。

不要在定义于 App() 内的函数中调用 getApp() ,使用 this 就可以拿到 app 实例。

不要在 onLaunch 的时候调用 getCurrentPages(),此时 page 还没有生成。>

通过 getApp() 获取实例之后,不要私自调用生命周期函数。

WXML

语法 说明 注意 eg
{{}} 1. 用于data对象下存在的字段 出现的位置 <br/> 2. 支持简单计算及组合 1. 关键字(需要在双引号之内) <br/> 2. 花括号和引号之间如果有空格,将最终被解析成为字符串 1. <checkbox checked="{{false}}"> </checkbox> ,不加{{}}会当成字符串false而判定为true <br/> 2. <view>{{"hello" + name}}</view>
wx:for 循环数组 默认数组的当前项的下标变量名默认为 index,数组当前项的变量名默认为 item
block wx:for 渲染一个包含多节点的结构块。
wx:key 指定列表中项目的唯一的标识符。
wx:if <br/> wx:elif <br/> wx:else <br/> wx:if vs hidden 1. 条件渲染 <br/> 2. wx:if 有更高的切换消耗而 hidden 有更高的初始渲染消耗 1. <view wx:if="{{condition}}"> True </view>
block wx:if 方便整体控制
template 1. 定义代码片段 <br/> 2. name属性定义模板名字<br/> 3. is属性声明需要的使用的模板并需要传入data <br/> 4. 模板有自己的作用域,只能使用data传入数据
import和include 1. import引用目前文件定义的模板 <br/> 2. include可以将目标文件除了<template/>的整个代码引入,相当于是拷贝到include位置 1. import 有作用域的概念,即只会 import 目标文件中定义的 template,而不会 import 目标文件 import 的 template。
事件 1. touchstart、touchmove、touchcancel、touchend、、taplongtap <br/> 2. 如无特殊说明,当组件触发事件时,逻辑层绑定该事件的处理函数会收到一个事件对象。(说白了,就是绑定事件js位置会带一个对象,其中包括很多属性) bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。 bindtap <br/> catchtouchstart

WXSS和组件等持续更新中...

觉得还不错就点个赞吧~

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
关于皕杰小程序打开公众号推文
关联公众号1.首先,登录微信公众号的后台,然后找到小程序,并点击小程序管理;其次,在小程序管理中,找到快速注册并认证小程序,点击以后用管理员身份验证一下。然后搜索想要关联的小程序,点击下一步,就关联成功了。2.小程序与公众号关联的时候,有
梦
4年前
微信小程序modal
首先创建一个组件component,组件命名可以为modalmodal.wxml的内容为<viewclass'modalmask'wx:if'{{show}}'bindtap'clickMask'<viewclass'modalcontent'<scrollviewscrollyclass'mainc
梦
4年前
微信小程序new Date()转换时间异常问题
微信小程序苹果手机页面上显示时间异常,安卓机正常问题image(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/b691e1230e2f15efbd81fe11ef734d4f.png)错误代码vardate'2021030617:00:00'vardateT
Stella981 Stella981
3年前
App唤起微信小程序和回调
在同一开放平台账号下的移动应用及小程序无需关联即可完成跳转,非同一开放平台账号下的小程序需与移动应用(APP)成功关联后才支持跳转。可在“管理中心移动应用应用详情关联小程序信息”,为通过审核的移动应用发起关联小程序操作。唤起App打开下程序他有两种方式:1,通过App分享小程序卡片到微信,然后在微信上点击小程序卡片打开小程序,
Easter79 Easter79
3年前
Taro小程序自定义顶部导航栏
微信自带的顶部导航栏是无法支持自定义icon和增加元素的,在开发小程序的时候自带的根本满足不了需求,分享一个封装好的组件,支持自定义icon、扩展dom,适配安卓、ios、h5,全面屏。我用的是京东的Taro多端编译框架写的小程序,原生的也可以适用,用到的微信/taro的api做调整就行,实现效果如下。!在这里插入图片描述(https://i
Wesley13 Wesley13
3年前
PHP 实现微信小程序敏感图片、内容检测接口
主要是为了调用微信小程序msgSecCheck、imgSecCheck接口。先附上小程序接口说明文档地址:https://developers.weixin.qq.com/miniprogram/dev/api/openapi/seccheck/msgSecCheck.html1、首先要获取a
Wesley13 Wesley13
3年前
5G消息与微信小程序互联互通?北京国都互联这么做……
最近微信小程序上线了一个超级流量的新入口URLScheme,据微信官网介绍,scheme码适用于短信、邮件、外部网页等拉起小程序的业务场景。通过小程序页面的URLScheme,可以在短信、邮件或微信外部的网页中打开微信小程序。意义在于将微信流量生态延伸到微信以外渠道,进一步完善了小程序和外部渠道互通的营销场景。北京国都互联第一时
哑火多态
哑火多态
Lv1
鹿车何日驾,归去颍东田。
文章
3
粉丝
0
获赞
0