发表于: 2019-12-09 22:50:10

0 1243


今天完成的事情:

微信前台页面渲染

接口测试
明天计划的事情:

点赞
遇到的问题:


收获:

微信接口如果写代码如下

 getData(){
var that = this;
wx.request({
url: this.api + '/article/all',

method: "GET",

success(res){
that.setData({
list:res.data.data.list
});
console.log(res);
console.log(res.data.data.list);
}
})
console.log(this.list)
},

你要自己写一个方法运行。

写接口和angular不一样, 我们接口都是写在JS里面的。

首先微信有自带写接口方法

wx.request

发起 HTTPS 网络请求。

写法一样第一个

url:写接口数据,这个是所有获取后台数据必填。

data:请求参数就是传值进去

header:请求头.

代码写法:

wx.request({
url: 'test.php', //仅为示例,并非真实的接口地址
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json' // 默认值
},
success(res) {
console.log(res.data)
}
})

后面就跟success(data){}这就是打印出来的数据,返回的是什么数据然后在通过变量进行赋值


返回的函数调出来代码如下

var that = this;
 success(res){
that.setData({
list:res.data.data.list
});

注意:这个this必须要换掉不换的话 会出现报错,至于是什么原因明天我查看下。

setData({})

小程序的视图层目前使用 WebView 作为渲染载体,而逻辑层是由独立的 JavascriptCore 作为运行环境。在架构上,WebView 和 JavascriptCore 都是独立的模块,并不具备数据直接共享的通道。当前,视图层和逻辑层的数据传输,实际上通过两边提供的 evaluateJavascript 所实现。即用户传输的数据,需要将其转换为字符串形式传递,同时把转换后的数据内容拼接成一份 JS 脚本,再通过执行 JS 脚本的形式传递到两边独立环境。

而 evaluateJavascript 的执行会受很多方面的影响,数据到达视图层并不是实时的。


这个是小程序里面专门用来调用返回数据的接口。具体原理没弄清楚 但是能掉下来。


返回列表 返回列表
评论

    分享到