微信小程序后台数据交互与wxs文件的介绍与使用

您所在的位置:网站首页 微信小程序行内标签 微信小程序后台数据交互与wxs文件的介绍与使用

微信小程序后台数据交互与wxs文件的介绍与使用

2024-07-16 04:01:10| 来源: 网络整理| 查看: 265

准备后台

后台源代码分享 。。 。。

ssm-oa.rar - 蓝奏云

前端测试代码分享

oa-mini.rar - 蓝奏云

前端发送请求封装

Promise

Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。

所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提供统一的 API,各种异步操作都可以用同样的方法进行处理。

promise运行中有三个状态: pending: 等待 (进行中) promise一创建出来,就是pending进行中fulfilled: 成功 (已完成), 调用 resolve, 就会将状态从pending改成fulfilled, 且将来就会执行.thenrejected: 失败 (拒绝), 调用 reject, 就会将状态从pending改成rejected, 且将来就会执行.catch注意点: 一旦promise的状态发生变化, 状态就会被凝固如果再调用reject或resolve,进行状态修改就没有意义了

准配请求接口地址

创建config/api.js

 

// 以下是业务服务器API地址 // 本机开发API地址 var WxApiRoot = 'http://localhost:8080/wx/'; // 测试环境部署api地址 // var WxApiRoot = 'http://192.168.0.101:8070/demo/wx/'; // 线上平台api地址 //var WxApiRoot = 'https://www.oa-mini.com/demo/wx/'; module.exports = { IndexUrl: WxApiRoot + 'home/index', //首页数据接口 SwiperImgs: WxApiRoot+'swiperImgs', MettingInfos: WxApiRoot+'meeting/list', AuthLoginByWeixin: WxApiRoot + 'auth/login_by_weixin', //微信登录 UserIndex: WxApiRoot + 'user/index', //个人页面用户相关信息 AuthLogout: WxApiRoot + 'auth/logout', //账号登出 AuthBindPhone: WxApiRoot + 'auth/bindPhone' //绑定微信手机号 };

封装request

在/utils/util.js中

/** * 封装微信的request请求 */ function request(url, data = {}, method = "GET") { return new Promise(function (resolve, reject) { wx.request({ url: url, data: data, method: method, header: { 'Content-Type': 'application/json', }, success: function (res) { if (res.statusCode == 200) { resolve(res.data);//会把进行中改变成已成功 } else { reject(res.errMsg);//会把进行中改变成已失败 } }, fail: function (err) { reject(err) } }) }); }

 

发送请求

将方法在生命周期函数中使用 页面加载后看后台返回的数据

 

 

loadMeetingInfos(){ let that=this; // wx.request({ // url: api.MettingInfos, // dataType: 'json', // success(res) { // console.log(res) // that.setData({ // lists:res.data.lists // }) // } // }) util.request(api.IndexUrl).then(res=>{ console.log(res)) this.setData({ lists:res.data.infoList }) }).catch(res=>{ console.log('服器没有开启,使用模拟数据!') }) }

WXS模块的使用

微信官方文档地址

 

index.wxml

{{common.msg}} {{common.foo}} {{foo.value}} var common = require('../wxs/common.wxs') // 在.wxs模块中引用其他 wxs 文件模块, 可以使用 require 函数。 module.exports = { value: common.inArray([1, 2, 3], 1) } // 方法一:单行注释 /* 方法二:多行注释 // 方法三:结尾注释。即从 /* 开始往后的所有 WXS 代码均被注释

index.wxss

.container{ height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; box-sizing: border-box; background-color: rgb(240, 240, 240); }

common.wxs

var foo="'hello world' from common.wxs" //inArray方法 判断数组中是否存在某元素 function inArray(arr,val){ return arr.indexOf(val)>-1 } var msg="some msg" //module 对象 每个 wxs 模块均有一个内置的 module 对象。 //属性 exports: 通过该属性,可以对外共享本模块的私有变量与函数。 module.exports={ foo:foo, inArray:inArray } module.exports.msg=msg

 

WXS使用注意

WXS 模块

WXS 代码可以编写在 wxml 文件中的 标签内,或以 .wxs 为后缀名的文件内。

模块

每一个.wxs文件和 标签都是一个单独的模块。每个模块都有自己独立的作用域。即在一个模块里面定义的变量与函数,默认为私有的,对其他模块不可见。一个模块要想对外暴露其内部的私有变量与函数,只能通过module.exports实现。

require函数

在.wxs模块中引用其他 wxs 文件模块,可以使用 require 函数。引用的时候,要注意如下几点:只能引用 .wxs 文件模块,且必须使用相对路径。wxs 模块均为单例,wxs 模块在第一次被引用时,会自动初始化为单例对象。多个页面,多个地方,多次引用,使用的都是同一个 wxs 模块对象。如果一个 wxs 模块在定义之后,一直没有被引用,则该模块不会被解析与运行。

< wxs> 标签

属性名

类型

默认值

说明

module

String

当前 标签的模块名。必填字段。

src

String

引用 .wxs 文件的相对路径。仅当本标签为单闭合标签或标签的内容为空时有效。

module 属性

module 属性是当前 < wxs > 标签的模块名。在单个 wxml 文件内,建议其值唯一。有重复模块名则按照先后顺序覆盖(后者覆盖前者)。不同文件之间的 wxs 模块名不会相互覆盖。module 属性值的命名必须符合下面两个规则:

首字符必须是:字母(a-zA-Z),下划线()

剩余字符可以是:字母(a-zA-Z),下划线(), 数字(0-9)

src 属性

src 属性可以用来引用其他的 wxs 文件模块。引用的时候,要注意如下几点:

只能引用 .wxs 文件模块,且必须使用相对路径。

wxs 模块均为单例,wxs 模块在第一次被引用时,会自动初始化为单例对象。多个页面,多个地方,多次引用,使用的都是同一个 wxs 模块对象。

如果一个 wxs 模块在定义之后,一直没有被引用,则该模块不会被解析与运行。

注意

< wxs > 模块只能在定义模块的 WXML 文件中被访问到。使用 或 时, 模块不会被引入到对应的 WXML 文件中。< template> 标签中,只能使用定义该 < template> 的 WXML 文件中定义的 < wxs> 模块。

变量

概念

不支持 let const

WXS 中的变量均为值的引用。

没有声明的变量直接赋值使用,会被定义为全局变量。

如果只声明变量而不赋值,则默认值为 undefined。

var表现与javascript一致,会有变量提升。

var foo = 1 ;var bar = "hello world"; var i; // i === undefined

上面代码,分别声明了 foo、 bar、 i 三个变量。然后,foo 赋值为数值 1 ,bar 赋值为字符串 “hello world”。

变量名

变量命名必须符合下面两个规则:首字符必须是:字母(a-zA-Z),下划线()

剩余字符可以是:字母(a-zA-Z),下划线(), 数字(0-9)

保留标识符

以下标识符不能作为变量名:

delete void typeof null undefined NaN Infinity var if else true false require this function arguments return for while do break continue switch case default

注释

// 方法一:单行注释 /* 方法二:多行注释 // 方法三:结尾注释。即从 /* 开始往后的所有 WXS 代码均被注释 var a = 1; var b = 2; var c = "fake";


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭