初步了解小程序

简介: 初步了解小程序

一、了解微信小程序

微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用
张小龙发布时间2017年1月9日

二、微信小程序和普通H5的区别

1. 微信小程序用开发者工具来查看预览页面,H5用浏览器来查看渲染页面
2. 微信小程序扩展了底层能力,H5调用底层能力比较弱
3. 微信小程序没有完整的JS API,但H5拥有完整的JS API(EcmaScript,DOM,BOM)开发能力
4. 渲染机制不同:微信小程序渲染线线程和逻辑线程是独立并行运行的,而H5只是一个线程

三、微信小程序的使用流程

  1. 注册微信小程序帐号
注册地址:
https://mp.weixin.qq.com/wxopen/waregister?action=step1&token=&lang=zh_CN

image.png

  1. 安装微信开发者工具
下载地址:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
  1. 创建小程序项目
  2. 快乐用小程序开发项目啦。。。
  3. 如何在手机上预览项目
点击微信开发者工具顶部的预览
  1. 小程序如何添加开发成员
微信小程序后台->管理->成员管理->成员管理

四、微信小程序开发目录说明

  1. pages
项目开发目录 相当于vue脚手架中的src目录
一个完整的小程序页面包括4部分:
1. xxx.wxml :模板页面(也称视图,类似于html)
  常用标签:
    view:相当于div
    button:按钮
    image:嵌入图像  类似于img
    text:添加文本 相当于span
    block:标签一个组织区域,最终不会渲染到页面上,相当于vue中的template
2. xxx.wxss:页面样式 相当于css
   注意:用rpx代表响应式单位 类似于rem
3.xxx.js: 写页面逻辑的 
4.xxx.json:页面的配置
  注意:页面的json配置来源于全局(app.json)配置中window字段
参考官方文档:https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html#window
  1. utils
存放封装的工具函数的目录
  1. app.js
是小程序的入口js文件 相当于vue中的main.js
通过App({})构造器实现
  1. app.json
小程序的全局配置
例如:
{
//小程序管理的所有页面路径
  "pages":[  
    "pages/index/index",
    "pages/logs/logs"
  ],
  //小程序的窗口表现
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#000",
    "navigationBarTitleText": "1909A",
    "navigationBarTextStyle":"white"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}
  1. app.wxss
是小程序的全局css样式,全影响所有的页面外观


  1. project.config.json
工具的统一配置
  1. 如何给小程序添加新的页面
在app.json的pages中直接添加新建的页面路径
{
  "pages": [
    "pages/index/index",
    "pages/logs/logs",
    "pages/cate/cate",
    "pages/shopping/shopping"
  ],
....
}

image.png

  1. wxss相关
rpx:(responsive pixel): 可以根据屏幕宽度进行自适应
  使用:量多少使用多少 用ps测量 100px,就是100rpx
参考设计师可以用 iPhone6 作为视觉稿的标准
样式导入:@import  主要用于复杂项目样式复用
  1. 小程序常用渲染指令
1.遍历 wx:for  相当于vue的v-for
例如:
 <view wx:for="{{ list2 }}" wx:for-index="n" wx:for-item="itm">
           <text>编号:{{ n+1 }}---姓名:{{ itm.name }}</text>
 </view>
 注:
 item:遍历的每一项
 index:每一项的下标
 wx:for-index:更改下标名
 wx:for-item:更改每一项的名称
 2.条件渲染
  wx:if 相当于vue的v-if       true:显示,false:隐藏
   wx:if  满足条件渲染
   wx:else  不满足条件渲染
  hidden 相当于vue的v-show的反值   true:隐藏,false:显示
  1. 小程序如何绑定事件
bind+事件名="方法名"
例如:
 <button bindtap="deleteItem">X</button>
 交互过程中视图不同步如何解决?
 this.setData()
   this.setData({
     list2: this.data.list2
   })
  1. 页面之间如何传参
自定义属性:将页面上的参数传递给js
  <view data-自定义名称="参数值">
 通过触发事件,在事件方法中接收
  let {index}=e.currentTarget.dataset
  deleteItem(e) {
    let {index}=e.currentTarget.dataset
    console.log(index)
  },
路由跳转传参:页面与页面之间传参
目录
相关文章
程序人生 - 2025年社保卡将覆盖全国
程序人生 - 2025年社保卡将覆盖全国
87 0
程序人生 - 2025年社保卡将覆盖全国
程序人生 - 狗狗会“嫉妒”吗?
程序人生 - 狗狗会“嫉妒”吗?
69 0
程序人生 - 一直打嗝怎么办?
程序人生 - 一直打嗝怎么办?
91 0
|
Web App开发 移动开发 人工智能
小程序的新战事
小程序的新战事
126 0
小程序的新战事
|
JavaScript 前端开发 Shell
神奇的自产生程序
最近读到冯·诺依曼的《Theory of Self-Reproducing Automata》的中译本,被自复制自动机理论深深吸引了!
286 0
神奇的自产生程序
程序19和程序20
【程序19】题目:打印出如下图案(菱形)***************************************** $arr = array(1,3,5,7,9,7,5,3,1); for($i=0;$i< count($arr);$i++){ for($j=0;$j
637 0
|
JavaScript PHP 前端开发
程序16和程序17
前一段时间用javascript实现了程序前几个例子,现在转变用php写,其实用什么语言写并不重要,最要的是思想。【程序16】题目:输出9*9口诀。1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。 for ($i = 1; $i
831 0