微信小程序前端promise封装】的更多相关文章

config.js const config = { base_url_api : "https://douban.uieee.com/v2/movie/", } export {config} http.js import { config } from "../config"; class HTTP { requset({ url, method = "GET", data = {} }) { const promise = new Prom…
funtion的封装 utils =>http.js var tips = { 1: "没有网络", 999: "无效的请求", 5000: "没有这些电影" } function http(params) { /*params 对象包含 url,success,method,data */ if(!params.method){ params.method ="GET"; } wx.request({ url:para…
这是我个人探究微信小程序前端与后端之间的数据交换的过程,再结合个人所学的SSH框架, 编程工具用myEclipse2014工具.当然,前提是后台的项目要部署到tomcat服务器上才行, 然后总结了从后台获取数据和从前端读取数据存放到数据库的两个过程, 大家可以参考.学习一下,看代码: 首先,在微信小程序的界面中,先设两个按钮:如下图所示: 代码如下: <button bindtap='houduanButton1'>点击发起请求</button> <view wx:for=&…
微信小程序,前端大梦想(六) 微信小程序之联合百度API实现定位 定位功能对于我们都不陌生,在移动端的应用中更是不可或缺的功能,小程序中也提供了对应的API帮助我们完成定位的实现,但是目前小程序的定位API只能返回经纬度,所以要获取更加完整的地理信息需要其它数据接口的帮助,这里我们使用百度地图API. 小程序位置API介绍 百度地图API返回地理信息 一. 获取位置 wx.getLocation(OBJECT): 获取当前的地理位置.速度.当用户离开小程序后,此接口无法调用,当用户点击"显示在聊…
微信小程序前端页面书写 WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件.事件系统,可以构建出页面的结构. 一.数据绑定 1. 普通写法 <view> {{ message }} </view> Page({ data: { message: 'Hello MINA!' } }) 2. 组件属性 **简直和上面没区别啊** <view id="item-{{id}}"> </view> Pag…
微信小程序前端样式WXSS书写 一. WXSS的简单介绍 WXSS(WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式. 与 CSS 相比,WXSS 扩展的特性有: 尺寸单位 样式导入 二. 尺寸单位 rpx(responsive pixel): 可以根据屏幕宽度进行自适应.规定屏幕宽为750rpx.如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px = 1物理像素…
关于微信小程序前端Canvas组件教程 微信小程序Canvas接口函数 ​ 上述为微信小程序Canvas的内部接口,通过熟练使用Canvas,即可画出较为美观的前端页面.下面是使用微信小程序画图的一些例子. 微信小程序画图实例 基本步骤 wxml中代码: <canvas canvas-id="myCanvas" class="myCanvas" ></canvas> js中onLoad()函数 const ctx = wx.createCan…
公司突然要开放微信小程序,持续蒙蔽的我还不知道小程序是个什么玩意. 于是上网查了一下,就开始着手开发..... 首先开发客户端的东西,都有个共同点,那就是  数据请求! 看了下小程序的请求方式大概和ajax请求差不多,所以先打好基础 从封装http请求开始 好了废话不多说了,上代码 首先....当然是建立配置文件,用来配置请求根路径 config.js export default { basePath: 'http://192.168.6.2:9002/api', fileBasePath:…
看完微信小程序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简. 废话不多说,直接分析前端代码.个人观点,难免有疏漏,仅供参考. 文件基本结构: 先看入口app.js,app(obj)注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等.其他文件可以通过全局方法getApp()获取app实例,进而直接调用它的属性或方法,例如(getApp().globalData) //app.js App({ onLaunch: function ()…
最近看了一下微信小程序,大致翻了一下,发现跟angular很相似的,但是比angular简单的很多具体可参考官方文档 https://mp.weixin.qq.com/debug/wxadoc/dev/framework/app-service/page.html?t=2017112 下面将封装http请求服务部分的服务以及引用部分 // 本服务用于封装请求 // 返回的是一个promisepromise var sendRrquest = function (url, method, data…
简介 美团出品的mpvue已经开源出来很久了,一直说要进行一次实践,这不最近一次个人小程序开发就用上了它. 看了微信官方的数据请求模块--request,对比了下get和post请求的代码,发现如果在每一个地方都用request的话,那会有很多代码是冗余的,于是就准备自己封装一个,下面就记录一下封装过程.注释也写在下面的代码里了. 实现的结果 代码要简洁 无需每个页面引入一次 Promise化,避免回调地狱 封装代码 //src/utils/net.js import wx from 'wx';…
小程序框架MINA简介       微信公众平台"小程序"具有不是APP胜似APP的效果,是一种不需要下载安装即可使用的应用,它实现了应用"触手可及"的梦想,用户扫一扫或者搜一下即可打开应用.也体现了"用完即走"的理念,用户不用关心是否安装太多应用的问题.应用将无处不在,随时可用,但又无需安装卸载. 去年9月22日,微信公众平台向外发出200个"小程序"内测邀请函.该"小程序"即去年年初腾讯曾对外介绍的微信…
微信小程序的视图与渲染  今天我们从四个方面来了解小程序:   •组件的基本使用  •数据绑定  •渲染标签  •模板的使用     一.组件的基本使用:  微信小程序为我们的开发提供了丰富的UI组件,按类别可分为视图容器.基础内容.表单组件.导航.媒体组件.地图.画布.客服会话,后期课程中用到相关组件再详细介绍.  视图容器中最关键的就是view组件,学过html的同学可以把view组件简单理解成div区块标签来使用.  基础内容中常用的组件是text组件,可以简单理解为span标签.  表单…
之前由于不了解微信小程序的整个的运行开发机制,走了很多的弯路,脑子灵光的可能不会遇到,这个主题系列的帖子希望可以帮助到像我一样理解能力慢的孩子. 不论是开发微信小程序还是说学习任何一门编程语言,最重要的一点是要夯实基础,不是只是去看看概念,从hello word开始就要好好的去对待每一行代码,软工是工科,工科就要多动手,每一位走的长远的程序员都不会缺少匠心精神. 1.Q:一个appid只能创建一个小程序项目吗?我写毁了怎么办?我把小程序开发者工具自动创建的快速启动模板不小心删掉了怎么办?? A:…
简介 相信看到这篇文章的同学,都已经对微信小程序的api文档有所了解了,也都经历了微信小程序api回调函数嵌套的痛苦,才会想要通过Promise解决回调地狱这个问题,我下面就直接介绍怎么在小程序中使用promise. 历史问题 很多同学肯定看到一些介绍微信小程序中使用Promise的文章,告诉你说微信小程序不支持Promise,需要自己引入es6-promise,或者需要使用一些第三方的promise,就我看到的如bluebird等,老版本的微信小程序应该是不支持es6中的Promise的,但是…
在utils文件夹新建文件utils.js,封装代码如下: 小程序升级后内部不自带Promise方法,需外部引入Promise方法   var sendRequest = function (url, method, data = {}, header = {} )     {     var promise = new Promise(function (resolve, reject){         wx.request({           url: url,           d…
@ 目录 一,让我们看一下项目目录 二,让我们熟悉一下这三个文件目的(文件名你看着办) 三,页面js中如何使用 今天的API的封装,我们拿WX小程序开发中,对它的API (wx.request)对这个进行一个二次封装.传统的小程序的网络请求,在我们的请求需求过多的时候,就会显得杂乱,和难维护.带着一开时难,后来维护爽的态度让我们来给他封装一下. 让我们开始 一,让我们看一下项目目录 让我们建立一个api的文件夹,来存放我们的封装逻辑,文件夹中建立三个JS文件 二,让我们熟悉一下这三个文件目的(文…
原文地址 //index.js Page({ data: { }, //点击支付按钮进行支付 payclick: function () { var t = this; wx.login({ //获取code换取openID success: function (res) { //code = res.code //返回code console.log("获取code"); console.log(res.code); var opid = t.getOpenId(res.code);…
下载es6-promise.js置于根目录下的libs文件夹下: 在根目录utils文件夹下新建httpsPromisify.js,即定义封装请求的方法 var Promise = require('../libs/es6-promise.min') function httpsPromisify(fn) { return function (obj = {}) { return new Promise((resolve, reject) => { obj.success = function…
1/ 公共文件util添加 request请求 //简单封装请求 function request(params, path, isShowLoading = true, goBack = false, type = 'none', obj={}) { try { console.log(path) let NowTime = Date.parse(; let defaultParams = { platform: app.globalData.platform, appVersion: app…
首先在我们可以直接写到需要的 page 中,然后再进行抽取组件,自定义组件建议 wxzx-xxx 命名 官网地址:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/ 例如,我们封装的组件名为 **wxzx-loadmore wxzx-loadmore.wxml <view hidden="{{response.length < 1}}"> <view class…
//httpService.jsconst host = 'https://baidu.com/ceshi' // 接口请求的域名 // get请求使用 json对象转字符串 (formatParams ) const formatParams = (data) => { let arr = [] for (let name in data) { arr.push(encodeURIComponent(name) + '=' + encodeURIComponent(data[name])) }…
var app = getApp(); function request(url,postData,doSuccess,doFail,doComplete){ var host = getApp().conf.host; wx.request({ url: host+url, data:postData, method: 'POST', success: function(res){ if(typeof doSuccess == "function"){ doSuccess(res);…
========================== flex[盒子]   display: flex; flex-direction: column; [从上到下排列]↓ justify-content: center; [距上方  和距下边 ——  距离一致] align-items: center; [距左+距右——  距离一致]   opacity: 0.8; [不透明度]       flex-direction: row; vertical-align: middle; ======…
wxml代码 <wxs src="../../wxs/string.wxs" module="tools" /> <!-- 调用tools.img(item.content)返回bool,也可以返回其他值 --> <view class='clearfix' wx:if="{{tools.img(item.content)}}"> <view class='content-view'> <im…
链接:https://www.cnblogs.com/showMagic/p/7677551.html…
下面将封装http请求服务部分的服务以及引用部分 // 本服务用于封装请求 // 返回的是一个promisepromise var sendRrquest = function (url, method, data, header) { var promise = new Promise(function (resolve, reject) { wx.request({ url: url, data: data, method: method, header: header, success:…
前言 2016年9月22日凌晨,微信官方通过“微信公开课”公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真正收到内测邀请的公众号据说只有200个. 虽然内测名额十分稀少,但依赖中国广大开发者的破解和分享精神,在网络上很快出现了开发工具的破解版本和API文档.然而可能是微信的妥协或者早已预料,9月24日微信官方发布了不需要破解就可以使用的微信小程序开发者工具和文档,对于费劲心思破解完的开发者来说应该瞬间整个人都不好了. 以下…
前言 2016年9月22日凌晨,微信官方通过"微信公开课"公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真正收到内测邀请的公众号据说只有200个. 虽然内测名额十分稀少,但依赖中国广大开发者的破解和分享精神,在网络上很快出现了开发工具的破解版本和API文档.然而可能是微信的妥协或者早已预料,9月24日微信官方发布了不需要破解就可以使用的微信小程序开发者工具和文档,对于费劲心思破解完的开发者来说应该瞬间整个人都不好…
前段时间接触了微信小程序,现在回过头来做一些笔记. 先上效果图 后台数据管理界面(PHP) 校园信息通微信小程序前端界面 下面先简单的说一下怎样部署一个微信小程序 首先是前端 微信小程序有它专门的开发手册:https://mp.weixin.qq.com/debug/wxadoc/dev/ 和微信web开发者工具:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html?t=18090422 下载后就可以根据开…