文件目录

  1. component 公共组件

  2. img 图片

  3. libs 插件,外部引入

  4. pages 页面

  5. utils 封装公共方法

  6. wxParse html转wxml-->插件

  7. app.js 公共逻辑方法

  8. app.json 公共配置

  9. app.wxss 公共样式

app.json

  • pages
  1. 用于指定小程序由哪些页面组成,每一项都对应一个页面的 路径(含文件名) 信息。
  2. 数组的第一项代表小程序的初始页面(首页)。

  • navigateToMiniProgramAppIdList
  1. 跳转另一个小程序,最多十个
  • window
  1. 全局窗口表现

属性 描述
navigationBarBackgroundColor 导航栏背景颜色
navigationBarTextStyle 导航栏标题颜色,仅支持 black / white
navigationBarTitleText 导航栏标题文字内容
backgroundColor 窗口的背景色
enablePullDownRefresh 是否开启全局的下拉刷新
  • sitemapLocation
  1. 引入sitemap.json。
  2. 开发者可以通过 sitemap.json 配置,或者管理后台页面收录开关来配置其小程序页面是否允许微信索引。

属性 取值 取值说明
action "allow"、"disallow" 命中该规则的页面是否能被索引
page "*"、页面的路径 * 表示所有页面
  • tabBar
  1. 底部tab表现,颜色仅支持16进制
属性 描述
color tab 上的文字默认颜色
selectedColor tab 上的文字选中时的颜色
backgroundColor tab 的背景色
borderStyle tabbar 上边框的颜色,black / white
list tab 的列表,最少 2 个、最多 5 个 tab
  1. list:icon大小限制40kb,尺寸81*81

属性 说明
pagePath 页面路径,必须在 pages 中先定义
text tab 上按钮文字
iconPath 图片路径
selectedIconPath 选中时的图片路径
  • permission



  • netWorkTimeout

  1. 网络超时时间

app.js

  • 每个小程序都需要在 app.js 中调用 App 方法注册小程序实例,绑定生命周期回调函数、错误监听和页面不存在监听函数等。

pages

  • .wxml-->页面结构
  1. 组件
view,text,swiper,scroll-view,input,CheckBox,button,audio,video,map,block
  1. 数据绑定
<view>{{data}}</view>
  1. 列表渲染
<view wx:for="{{array}}"> {{item}} </view>
  1. 条件渲染
<view wx:if="{{view == 'WEBVIEW'}}"> WEBVIEW </view>
<view wx:elif="{{view == 'APP'}}"> APP </view>
<view wx:else="{{view == 'MINA'}}"> MINA </view>
  1. 事件参数,大小写问题
<view data-hi="WeChat" bindtap="tapName">Click me!</view>

6.阻止冒泡事件

<view id="outer" bindtap="handleTap1">
outer view
<view id="middle" catchtap="handleTap2">
middle view
<view id="inner" bindtap="handleTap3">
inner view
</view>
</view>
</view>
  • .js----->页面逻辑
  1. getapp()
  2. 生命周期
pages({
data: {
text: "This is page data."
},
onLoad: function(options) {
console.log(options.id)
// 页面创建时执行
console.log('页面加载时触发。一个页面只会调用一次,可以在 onLoad 的参数中获取打开当前页面路径中的参数。)
},
onShow: function() {
// 页面出现在前台时执行
console.log('页面显示/切入前台时触发。)
},
onReady: function() {
// 页面首次渲染完毕时执行
console.log('页面初次渲染完成时触发。一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。)
},
onHide: function() {
// 页面从前台变为后台时执行
console.log('页面隐藏/切入后台时触发)
},
onUnload: function() {
// 页面销毁时执行
console.log('页面卸载时触发。如wx.redirectTo或wx.navigateBack到其他页面时。)
},
onPullDownRefresh: function() {
// 触发下拉刷新时执行
},
onReachBottom: function() {
// 页面触底时执行
},
onShareAppMessage: function () {
// 页面被用户分享时执行
},
onTabItemTap(item) {
console.log(item)
}
})
  1. 点击事件对象
属性 说明
type 事件类型
timeStamp 事件生成时的时间戳
target 触发事件的组件的一些属性值集合
currentTarget 当前组件的一些属性值集合
  1. 请求方法
wx.request({
url: 'test.php', //仅为示例,并非真实的接口地址
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json' // 默认值
},
success: function(res) {
console.log(res.data)
},
fail: function (err) {
console.log(err)
},
complete: function(e) {
console.log(e)
}
})
  1. 保存数据
this.setData({
text: 'Set some data for updating view.'
}
  1. 页面通信
属性 说明
wx.switchTab(url:'/index') 跳转到 tabBar 页面
wx.navigateTo(url:'/login') 保留当前页面,跳转到应用内的某个页面。
wx.redirectTo(url:'/login?id=1') 关闭当前页面,跳转到应用内的某个页面。

7.微信支付

 wx.requestPayment({
timeStamp: '',
nonceStr: '',
package: '',
signType: 'MD5',
paySign: '',
success (res) { },
fail (res) { }
})
属性 说明
timeStamp 时间戳,从 1970 年 1 月 1 日 00:00:00 至今的秒数,即当前的时间
nonceStr 随机字符串,长度为32个字符以下
package 统一下单接口返回的 prepay_id 参数值,提交格式如:prepay_id=***
signType 签名算法,默认MD5
paySign 签名,具体签名方案参见 小程序支付接口文档
  • .json -->页面配置 ———— 非必需
属性 描述
navigationBarBackgroundColor 导航栏背景颜色
navigationBarTextStyle 导航栏标题颜色,仅支持 black / white
navigationBarTitleText 导航栏标题文字内容
backgroundColor 窗口的背景色
enablePullDownRefresh 是否开启当前页面的下拉刷新
usingComponents 页面自定义组件配置
  • .wxss -->页面样式 ———— 非必需
  1. 单位 :rpx

  2. 选择器

    .class #id element 伪类

  3. 样式

    .normal_view {
    padding:15rpx;
    }

  4. 内联样式

    <view style="color:red"></view>

组件

  • button
<button disabled="" open-type="launchApp" hover-class=""></button>
属性 说明
disabled 是否禁用
open-type 微信开放能力
app-parameter 打开 APP 时,向 APP 传递的参数
bindgetuserinfo 用户点击该按钮时,返回获取到的用户信息
bindcontact 客服消息回调
bindgetphonenumber 获取用户手机号回调
bindlaunchapp 打开 APP 成功的回调
  • open-type合法值
说明
contact 打开客服会话
share 触发用户转发
getPhoneNumber 获取用户手机号,可以从bindgetphonenumber回调中获取到用户信息
getUserInfo 获取用户信息,可以从bindgetuserinfo回调中获取到用户信息
launchApp 打开APP,可以通过app-parameter属性设定向APP传的参数

miniapp基础的更多相关文章

  1. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  2. node-webkit 环境搭建与基础demo

    首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...

  3. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  4. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  5. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  6. HTTPS 互联网世界的安全基础

    近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...

  7. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  8. .NetCore MVC中的路由(1)路由配置基础

    .NetCore MVC中的路由(1)路由配置基础 0x00 路由在MVC中起到的作用 前段时间一直忙于别的事情,终于搞定了继续学习.NetCore.这次学习的主题是MVC中的路由.路由是所有MVC框 ...

  9. .NET基础拾遗(5)多线程开发基础

    Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...

随机推荐

  1. 笨办法学习python3练习代码ex20.py 函数和文件

    注意,还要在python3,就是ex20.py的同目录里面直接创建一个ex20.txt的文件.里面至少要有三行内容 #函数和文件 #readline:只读取文本文件的一行 #seek(0):将读写位置 ...

  2. 001_HyperLedger Fabric环境安装

    HyperLedger Fabric的环境,有解决三大问题 第一,是系统环境,这里我们选择的是centos7 第二,是开发环境,这里我们选择的是Go语言 第三,是运行环境,这里我们选择的是Docker ...

  3. .NetCore 配合 Gitlab CI&CD 实践 - 单体项目

    前言 上一篇博文 .NetCore 配合 Gitlab CI&CD 实践 - 开篇,主要简单的介绍了一下 GitLab CI 的持续集成以及持续部署,这篇将通过 GitLab CI 发布一个 ...

  4. 解决drf_yasg中的SwaggerAPI无法正确分组问题

    swagger是后台开发中很好用的交互式文档,Django原本的Django-Swagger已经停止维护了,现在一般用drf_yasg这个包来实现文档,它里面支持swagger和redoc两种,red ...

  5. LeetCode746 Min Cost Climbing Stairs(爬上楼梯的最小损失)

    题目 On a staircase, the i-th step has some non-negative cost cost[i] assigned (0 indexed). Once you p ...

  6. 关于vector的自我补充

    insert()函数,选择性插入. insert(v.begin()+i,x)意思就是把x插入vector数组v的第i位置上(也是迭代器的位置上),其后面的数字都会自动后移.注意i是从0开始的! er ...

  7. python爬虫抖音 个人资料 仅供学习参考 切勿用于商业

    本文仅供学习参考 切勿用于商业 本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm 1. 下载最新版本的fiddler(自行百度下载),以及相关配置 1.1.依次点击,菜单栏-Too ...

  8. 28个漂亮的React.js后台管理模板

    React管理模板 为您的React Web应用程序开发一个管理区域可能非常耗时.它与设计所有前端页面一样重要. 这是2020年设计出色的顶级React.js后台管理模板的列表. 这些模板确实有价值, ...

  9. JavaScript学习系列博客_14_JavaScript中对象的基本操作

    对象的基本操作 - 创建对象 - 方式一:使用new关键字调用的函数,是构造函数(constructor),构造函数是专门用来创建对象的函数. var obj = new Object(); - 方式 ...

  10. 基于python tkinter的点名小程序

    import datetimeimport jsonimport osimport randomimport tkinter as tkimport openpyxl # 花名册文件名excel_fi ...