基础篇

官网:

微信小程序:

小程序是一种新的开放能力,开发者可以快速地开发一个小程序。小程序可以在微信内被便捷地获取和传播,同时具有出色的使用体验。

微信公众号和小程序的主要区别?

、定位不同(公众号服务于营销与信息传递,小程序面向产品与服务)

、实现技术区别 (公众号基于H5(html5 vue angular react ionic),

小程序必须用小程序的语法开发)

、用户体验 (小程序的用户体验要比 html5好一些,更接近原生app)

、调用原生的能力 (微信公众号可以借助jssdk调用手机的摄像头拍照 ,调用扫描二

维码等 能力有限。 小程序调用原生的能力非常强大,能实现几乎app能实现的所有功

能) (调用原生的功能 *可以不开发app )

、微信app上面的入口不一样

微信小程序的应用场景:

互联网+ 物联网+ 人工智能+

餐厅点餐+小程序

      基于LBS小程序直接搜索附近的餐厅,进店用进行扫码点餐、支付。

无人点餐:

公交+小程序
  
公交车站放一个小程序二维码,扫一扫就知道公交什么时候来。 买电影票+小程序    进入小程序直接搜附近电影院下单搞定。 加油站缴费+小程序
  
加油下车排队缴费太麻烦,扫小程序不用下车就能解决。 火车上叫餐+小程序
  
不用去固定车厢点餐,扫座椅后背的小程序二维码下单,乘务员给你送来。 旅行+小程序
  
旅行酒店预订、周边攻略、目的地、游记等都可以在小程序里轻松搞定。 快递+小程序
  
一键打开快递小程序,查看自己的订单,查看快递送达的时间,查看宝贝现在的物流情况。 医疗+小程序
  
用小程序,提前挂号、网上排队,就医后扫码支付,直接拿药 景区+小程序
  
扫描景点门票小程序的二维码,即可查看景区详情 零售+小程序
  
想吃个水果或吃点零食,直接搜索附近小程序下单,送货上门。

小程序开发文档、开发工具、开发指南、体验demo

开发文档

开发工具

体验demo

https://developers.weixin.qq.com/miniprogram/dev/demo.html

 微信开放社区

微信小程序的目录结构

.json 后缀的 JSON 配置文件
.wxml 后缀的 WXML 模板文件
.wxss 后缀的 WXSS 样式文件
.js 后缀的 JS 脚本逻辑文件

 JSON 配置

我们可以看到在项目的根目录有一个 app.json 和 project.config.json,此外在 pages/logs 目录下还有一个 logs.json,我们依次来说明一下它们的用途。

小程序配置 app.json

app.json 是当前小程序的全局配置,包括了小程序的所有页面路径、界面表现、网络超时时间、底部 tab 等。QuickStart 项目里边的 app.json 配置内容如下:

{
"pages": ["pages/index/index", "pages/logs/logs"],
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#fff",
"navigationBarTitleText": "WeChat",
"navigationBarTextStyle": "black"
}
}

我们简单说一下这个配置各个项的含义:

  1. pages字段 —— 用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在哪个目录。(写好页面路径保存,可以直接生成文件
  2. window字段 —— 定义小程序所有页面的顶部背景颜色,文字颜色定义等。

其他配置项细节可以参考文档 小程序的配置 app.json 。

工具配置 project.config.json

在工具上做的任何配置都会写入到这个文件,当你重新安装工具或者换电脑工作时,你只要载入同一个项目的代码包,开发者工具就自动会帮你恢复到当时你开发项目时的个性化配置,其中会包括编辑器的颜色、代码上传时自动压缩等等一系列选项。

其他配置项细节可以参考文档 开发者工具的配置 。

页面配置 page.json

让开发者可以独立定义每个页面的一些属性,例如顶部颜色、是否允许下拉刷新等等。

其他配置项细节可以参考文档 页面配置 。

WXML 模板

WXML 充当的就是类似 HTML 的角色。

更详细的文档可以参考 WXML

WXSS 样式

WXSS 具有 CSS 大部分的特性,小程序在 WXSS 也做了一些扩充和修改。

  1. WXSS在底层支持新的尺寸单位 rpx 。

  2. 可以写一个 app.wxss 作为全局样式,会作用于当前小程序的所有页面,局部页面样式 page.wxss 仅对当前页面生效。

  3. WXSS 仅支持部分 CSS 选择器

更详细的文档可以参考 WXSS 。

JS 交互逻辑

通过编写 JS 脚本文件来处理用户的操作。

响应用户的操作就是这么简单,更详细的事件可以参考文档 WXML - 事件 。

微信小程序事件、方法、事件对象、方法传值、获取data数据、修改data数据、冒泡非冒泡事件

<!--pages/news/news.wxml-->
<view>
{{msg}}
</view> <button size='mini' bindtap="run">
执行run方法,注意触发方法不需要写()
</button> <button size='mini' bindtap="getMsg">
获取msg中的值
</button> <button size='mini' bindtap="setMsg">
改变msg中的值
</button>

  

// pages/news/news.js
Page({ /**
* 页面的初始数据
*/
data: {
msg: '小程序中的msg'
},
/**
* 自定义方法
*/
run() {
console.log('执行小程序run方法!')
},
/**
* 获取data中的值
*/
getMsg() {
// 获取data中的数据
const msg = this.data.msg
console.log(msg)
},
/**
* 设置data中的值
*/
setMsg() {
// 设置data中的数据
this.setData({
msg:'改变msg中的值'
})
console.log(this.data.msg)
}, /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
// 执行自定义方法
this.getMsg()
}
})

  

微信小程序学习资料整理的更多相关文章

  1. 微信小程序 学习资料

    微信小程序 学习资料 资料名称 网址 官方教程 https://developers.weixin.qq.com/miniprogram/dev/index.html?t=18110517

  2. 微信小程序相关资料整理

    微信小程序官方介绍https://mp.weixin.qq.com/debug/wxadoc/introduction/index.html?t=201818 微信小程序开发资源https://jue ...

  3. 微信小程序直播资料整理

    可以通过此脑图大概了解小程序直播内容:https://developers.weixin.qq.com/community/develop/article/doc/0002a62b3749f088fa ...

  4. 微信小程序学习资料

    官方文档 https://mp.weixin.qq.com/debug/wxadoc/dev/ W3CSchool的教程 https://www.w3cschool.cn/weixinapp/ 更多参 ...

  5. 微信小程序--相关资料

    微信小程序Demo https://github.com/zce/weapp­-demojustjavac/awesome­wechat­weapp: 微信小程序开发资源汇总 https://gith ...

  6. 【微信小程序学习笔记】入门与了解

    [微信小程序学习笔记(一)] IDE 下载安装 下载地址 官方工具:https://mp.weixin.qq.com/debug/w … tml?t=1476434678461 下载可执行文件后,可按 ...

  7. 微信小程序学习笔记二 数据绑定 + 事件绑定

    微信小程序学习笔记二 1. 小程序特点概述 没有DOM 组件化开发: 具备特定功能效果的代码集合 体积小, 单个压缩包体积不能大于2M, 否则无法上线 小程序的四个重要的文件 *js *.wxml - ...

  8. 微信小程序学习笔记一 小程序介绍 & 前置知识

    微信小程序学习笔记一 1. 什么是小程序? 2017年度百度百科十大热词之一 微信小程序, 简称小程序, 英文名 Mini Program, 是一种不需要下载安装即可使用的应用 ( 张小龙对其的定义是 ...

  9. ***微信小程序学习文档和资料归档收集

    微信小程序官方文档: https://cloud.tencent.com/document/product/619 小程序培训视频教程: https://xw.qq.com/edu/201805140 ...

随机推荐

  1. 创建/删除Cookie数据

    //1.编写(创建 和 修改 一样) HttpCookie cookie = new HttpCookie("userName");cookie.Value = "顾志海 ...

  2. sql表与表之间的数据操作

    --把一张表的内容更新到另一张表 update 表1 set 表1.Store=t2.Name from 表2 t2 where 表1.id=t2.id --备份一张表 create table ta ...

  3. DataType 枚举

    命名空间:   System.ComponentModel.DataAnnotations 成员名称 说明   CreditCard 表示信用卡号码.   Currency 表示货币值.   Cust ...

  4. Docker容器的原理与实践(上)

    本文来自网易云社区. 虚拟化 是一种资源管理技术,将计算机的各种资源予以抽象.转换后呈现出来, 打破实体结构间的不可切割的障碍,使用户可以比原本更好的方式来应用这些资源. Hypervisor 一种运 ...

  5. Open vSwitch 2.9.2 创建 RPM 安装包

    1.安装依赖环境 yum install gcc make python-devel openssl-devel graphviz autoconf automake rpm-build redhat ...

  6. Python 获取主机名

    import socket print socket.gethostname()

  7. 在kolla中配置cinder ceph多后端

    原文链接:在kolla中配置cinder ceph多后端

  8. 在QtCreater中配置Artistic Style格式化Qt程序源代码!!

    Qt很吸引人,可能是我对Qt开发工具QtCreater不熟悉,只发现里面提供了一个快捷键:"ctrl+i",很多人说这就是格式化代码快捷键,我发现这仅仅是代码缩进,并不是真正意义上 ...

  9. AGC032D Rotation Sort

    题目传送门 Description 给定\(N\)的排列(\(N\leq5000\)),将任一区间最左侧的数插到该区间最右边的代价为\(A\),将任一区间最右侧的数插到该区间最左边的代价为\(B\), ...

  10. nginx 场景业务汇总 (初)

    本文链接:http://www.cnblogs.com/zhenghongxin/p/8891385.html 在下面的测试中,建议每次修改nginx配置文件后,都用此命令检查一下语法是否正确: [r ...