微信小程序开发总结文档(微信小程序开发实训总结)

小程序开发 1457
本篇文章给大家谈谈微信小程序开发总结文档,以及微信小程序开发实训总结对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、微信小程序开发常用知识点

本篇文章给大家谈谈微信小程序开发总结文档,以及微信小程序开发实训总结对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

微信小程序开发常用知识点

与iOS开发很相似,小程序的导航栏也可以全局设置一下,在公共文件app.json中设置了导航栏相关样式如下:

这个地方是全局设置,如果想要在不同的页面设置各自的标题属性,只需要在该子级文件中设置

子页面想调用共公js的方法,需先在子页面js中先实例化app:具体过程如下

在需要调用的子页面中,

如果是嵌套循环,很容易出现多个list和index,例如表视图一样,所以在小程序中可以重命名 list 和index 方法为:wx:for-index='重命名' wx:for-list="重命名"

在APP开发中,UI复用是一个很好的手段,在小程序上就是模板template。

在逛小程序联盟的时候发现了一个大湿总结的比我好,搬过来一下。

微信小程序中,如果几个页面中需要引用同一个header/footer,当定义了公共模板时,有两种引用方法如下:

方法一:在公共模板中定义template元素,利用 方法 ,这种方式只会显示公共模板的template里面的内容,之外的内容不会显示

** 方法二:**

总结:import方式和imclude方式的不同在于前者仅引用公共模板中的template里面的内容后者仅引用template以外的内容,显而易见,include方式更简单一些,在wxml中只需要一句话即可。

rpx单位是微信小程序中css的尺寸单位,rpx可以根据屏幕宽度进行自适应。规定屏幕宽为750rpx。如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px。

具体的 这里有一片文章介绍的很详细 , 还有这个

小程序的事件主要有:

小程序中的wxml中绑定事件有两种:以touchtab为例 ,在wxml中必须有bind/catch不然无法实现上述事件

bindtouchtab和catchtouchtab bind的不会阻止事件冒泡(元素最里层到最外层函数执行),catch会阻止冒泡,只是冒泡到当前层结束

如果想在元素执行某事件时把元素的某个属性传到后台 可在元素中加入data-属性名称=“xxx”,在事件函数中 function(event){}的event中的currentTarget里面的data-set里面可查看接收在元素中绑定的的id或者其他属性clientX/Y 查看滑动手指距离屏幕左侧的位置,查看滑动位置也可以通过touchstart和和touchend的clientx/y获取

看到几个别人写的,瞬间石化,果断收藏。

在小程序中,定义了一项工具文件utils,此文件的js旨在本文件之内有效,当其他子页面想调用其中的js方法或者变量时,需要两步骤:

1:在utils被调用的js文件中,面向对象的方式模型输出: module.exports={要调用的函数名称:要调用的函数名称 };

2:在要调用的js文件中模块化引入utils的js文件 var object=require("utils被调用的js文件地址"); 可以输出一下object就能看到被调用的方法了;

例子如下:

要调用的js文件:

小程序的后台获取数据方式get/post具体函数格式如下:wx.request({})

如果屏幕中某元素的内容超过此元素的高度,可设置元素为scroll-view 为滚动状态元素,这样可以做到元素固定高度且元素内容滚动屏幕不滚动的效果;

scroll-view标签的主要属性分为以下几种:

微信小程序广告轮播元素 图片所在元素/swiper-item

其中属性有:

图片更改事件:bindchange='imgchange' imagechange()的e.detail.current为当前显示页面的下标值

开发微信小程序需要注意些什么问题

微信小程序开发有哪些注意事项:

1、注册小程序

在开发小程序之前,首先就是要注册一个小程序。不过注册的时候,也要根据需求来注册,看是否需要开通微信支付,去确定需要选择哪种主体去注册。如果需要开通微信支付的小程序,只能用企业为主体来注册。反之,则企业、个人均可注册。

2、分析讨论、需求对接

对开发需求进行分析,整理成需求文档,再与开发团队就需求文档进行技术性讨论,优化调整开发需求,确定最终的需求文档,与开发团队进行对接。

3、原型设计、UI设计前后端技术开发

确定开发需求之后,开发团队的产品经理会根据客户要求设计产品原型,而UI设计师同时会按需求文档去进行页面交互设计,再将设计稿交给开发人员进行技术开发。在功能需求确定、产品原型确定、设计稿经过确认之后,就可以进入正式系统定制开发阶段,将所有资料交到前后端的开发技术人员手中,让他们通过开发实现后台管理系统与前端效果呈现。

4、产品测试调优

在微信小程序系统基本开发完毕之后,就需要对产品进行测试,查找是否系统运行是否存在问题,对基本已经完成的系统进行整改调优。

5、审核发布

微信小程序蓝牙入坑总结

   微信小程序的蓝牙流程按着官网的说明写就可以了,具体参看文档: 小程序开发文档

坑列表:

    1.成对调用需要注意, wx.openBluetoothAdapter 与 wx.closeBluetoothAdapter

                                        wx.startBluetoothDevicesDiscovery 与 wx.stopBluetoothDevicesDiscovery

     2.安卓与IOS的区别:安卓可以根据蓝牙标识直接连接,IOS则必须先搜索才能进行连接;

     3.权限问题:IOS的系统不能仅仅打开系统的蓝牙权限,因为IOS新版本针对蓝牙做了应用及的限制,因此需要给微信蓝牙权限才可以使用;对于安卓系统,部分手机必须打开定位权限才能搜索到蓝牙设备

     4.创建连接API( wx.createBLEConnection )调用失败:

            超时报错:{"errCode":10012,"errMsg":"createBLEConnection:fail:operate time out"}

            连接超时:{"errCode":10003,"errMsg":"createBLEConnection:fail connect time out."}

            连接失败:{"errCode":10003,"errMsg":"createBLEConnection:fail:connection fail status:133"}

           基本都是安卓手机出现以上问题,针对这些报错,需编写重试连接操作,很大概率能解决此问题;

     5.搜索不到任何设备,安卓手机可能是定位权限的问题造成,苹果手机基本就是设备出问题了

     6.网络请求与蓝牙请求尽量分开,因为蓝牙连接会受到影响,造成一些异常信息;

     7.所有API调用针对fail函数最好都做一次重试,因为再次重试可能就会成功;、

     8.API调用之间最好有一定毫秒数的间隔,目前怀疑api部分机型会存在延时;

总之微信的蓝牙连接就那些已知的接口,调用时多考虑异常的情况下的重试,简单总结下,以便查阅。

           

    

小程序开发所有的流程?

小程序开发流程其实很简单,如下:

1、微信小程序注册

在微信公众平台注册小程序,完成注册后可以同步进行信息完善和开发。

2、微信小程序信息完善

填写小程序基本信息,包括名称、头像、介绍及服务范围等。

3、微信小程序开发

完成小程序开发者绑定、开发信息配置后,开发者可下载开发者工具、参考开发文档进行小程序的开发和调试。 

4、测试

在软件设计完成之后要进行严密的测试,一发现软件在整个软件设计过程中存在的问题并加以纠正。可以是开发人员内部测试(内测)或者交给客户的公开测试(公测) 。整个测试阶段分为单元测试、组装测试、系统测试三个阶段进行。

5、微信小程序提交审核和发布

完成小程序开发后,提交代码至微信团队审核,审核通过后即可发布(公测期间不能发布)。

如何快速开发个微信小程序

无论是前端开发,还是后端开发,时间长了,你总会能总结出它的一些规律的,对于前端开发主要就两条,页面展现,逻辑处理。如果是全流程开发的话,那就是,如何创建项目,页面如何实现,数据获取和逻辑处理如何实现,如何打包上线。移动端或者前端,基本开发流程就这个四个步骤。所以在在前端方面去学习新一门开发技术,只要你解决了这四个问题,那一切就OK了,下面我就讲一下,我在学习微信小程序开发,如何用这四步法快速上手开发的

学习一门新技术先看下它的开发文档 小程序介绍

然后呢就是开始一些准备的步骤,微信公众平台提供我们开发管理的功能 微信工作平台

账号注册

小程序信息配置

请看 小程序开发步骤

小程序项目的创建

到此第一个问题我们就算完成了,接下来解决小程序界面如何搭建。

然后最重要的,微信提供自己的开发者工具,不需要用chrome什么调试, 微信开发者工具 提供wxapi的调用测试能力,这些在chrome里面是测试不了的

框架的视图层由 WXML 与 WXSS 编写,由组件来进行展示。

将逻辑层的数据反应成视图,同时将视图层的事件发送给逻辑层。

WXML(WeiXin Markup language) 用于描述页面的结构。

WXS(WeiXin Script) 是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。

WXSS(WeiXin Style Sheet) 用于描述页面的样式。

小程序的页面是由wxml 和wxss这两个文件来实现的,wxml结构如何写请参考 微信小程序组件

wxss是负责样式控制的,基本类似于css,支持flex布局,所以要想上手构建微信小程序的界面,最好要熟悉html ,css.

还有最重要的就是生命周期了

//index.js

Page({

  data: {

    text: "This is page data."

  },

  onLoad: function(options) {

    // 页面创建时执行

  },

  onShow: function() {

    // 页面出现在前台时执行

  },

  onReady: function() {

    // 页面首次渲染完毕时执行

  },

  onHide: function() {

    // 页面从前台变为后台时执行

  },

  onUnload: function() {

    // 页面销毁时执行

  },

  onPullDownRefresh: function() {

    // 触发下拉刷新时执行

  },

  onReachBottom: function() {

    // 页面触底时执行

  },

  onShareAppMessage: function () {

    // 页面被用户分享时执行

  },

  onPageScroll: function() {

    // 页面滚动时执行

  },

  onResize: function() {

    // 页面尺寸变化时执行

  },

  onTabItemTap(item) {

    // tab 点击时执行

    console.log(item.index)

    console.log(item.pagePath)

    console.log(item.text)

  },

  // 事件响应函数

  viewTap: function() {

    this.setData({

      text: 'Set some data for updating view.'

    }, function() {

      // this is setData callback

    })

  },

  // 自由数据

  customData: {

    hi: 'MINA'

  }

})

微信提供的界面组件很多,没必要一下子全学会,会用一两个就行,其他的遇到需要的时候现查先做,这样又节约学习时间,又能够加深理解。到此第二个问题我们解决了,下面看第三个问题,数据逻辑如何处理。

数据定义

数据展现

逻辑处理是通过js文件来操作的

一个服务仅仅只有界面展示是不够的,还需要和用户做交互:响应用户的点击、获取用户的位置等等。在小程序里边,我们就通过编写 JS 脚本文件来处理用户的操作。

view{{ msg }}/view

button bindtap="clickMe"点击我/button

点击 button 按钮的时候,我们希望把界面上 msg 显示成 "Hello World",于是我们在 button 上声明一个属性: bindtap ,在 JS 文件里边声明了 clickMe 方法来响应这次点击操作:

Page({

  clickMe: function() {

    this.setData({ msg: "Hello World" })

  }

})

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

此外你还可以在 JS 中调用小程序提供的丰富的 API,利用这些 API 可以很方便的调起微信提供的能力,例如获取用户信息、本地存储、微信支付等。在前边的 QuickStart 例子中,在 pages/index/index.js 就调用了 wx.getUserInfo 获取微信用户的头像和昵称,最后通过 setData 把获取到的信息显示到界面上。更多 API 可以参考文档  小程序的API  。

现在几乎每个应用都需要从后端获取数据,那么小程序如何获取呢,当然是通过网路操作了。我们封装了小程序的网络操作

const app = getApp()

const request = (url, options) = {

  return new Promise((resolve, reject) = {

    wx.request({

      url: `${app.globalData.host}${url}`,

      method: options.method,

      data: options.method === 'GET' ? options.data : JSON.stringify(options.data),

      header: {

        'Content-Type': 'application/json; charset=UTF-8'

        // 'x-token': 'x-token'  // 看自己是否需要

      },

      success(request) {

        if (request.data.error_code === 0) {

          resolve(request.data)

        } else {

          reject(request.data)

        }

      },

      fail(error) {

        reject(error.data)

      }

    })

  })

}

const gets = (url, options = {}) = {

  return request(url, { method: 'GET', data: options })

}

const post = (url, options) = {

  return request(url, { method: 'POST', data: options })

}

const put = (url, options) = {

  return request(url, { method: 'PUT', data: options })

}

// 不能声明DELETE(关键字)

const remove = (url, options) = {

  return request(url, { method: 'DELETE', data: options })

}

module.exports = {

  gets,

  post,

  put,

  remove

}

如何使用请看下图

数据获取

数据展现如下图

数据展现

到此,第三个问题我们就解决的了下面看第四个问题。

小程序发布文档说明

小程序发布步骤

到此四个问题都解决了。

总结:本文内容是很简单的,借用了大部分官方文档,其实本文目的不是教你学小程序开发,而是分享一下在学习一项新事物我的方法和思路,互联网技术变化是很快的,我觉得一个人的能力,不仅仅是你技术有多好,你要明白技术是用来干什么的,技术是用来解决现实生活中的问题的,一个好的程序员,不是技术能力,而是解决问题的能力,解决问题不可能只用一种技术,这就要求你的学习能力要强,针对不同的问题,使用不同的技术,哪怕使用的技术你不熟悉,但它是解决问题最好的方法,那就要求你有快速学习并解决问题的能力。

学习一项新技术,我们要先抓住主线,把流程搞通了,以后再在工作中慢慢的熟悉和丰富对它细节的一些认知,所以学一项东西前多问自己几个问题,我学什么,我为什么学,我怎么学,等。先思考后学习,一定会让你事半功倍。

对于怎么学习微信小程序开发,我问了自己上面的四个问题,每个问题,我只需要了解大体内容,四个问题都解决了,然后整个流程也就通了,以后也就是慢慢的对每个问题内容的细节慢慢的熟悉和了解了,其实花了不到一下午的时间,我就搞出了一个简单的demo出来了,了解的内容基本已经覆盖微信小程序日常开发80%的内容了。以上就是我的一点学习心得。

最后 小程序Demo

Demo截图

首页

我的

点击我的任意条目,数据是从第三方聚合平台提供的api获取的

最后目前有很多的多端开发框架,背景大多是都是因为小程序开发的盛行

其他还有很多例如

阿里的rax

我们自己的ditto

微信小程序开发总结文档的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于微信小程序开发实训总结、微信小程序开发总结文档的信息别忘了在本站进行查找喔。

扫码二维码