-- 时常在想,怎么样才能把知识写的清晰,其实是我理解的不够清晰

微信小程序其实是一个客户端页面,也是需要和服务器交互才能体现数据。

1 --服务器搭建Web API :MVC4 中的一个模板, 如下是Query API  的一个Get 方式,只是为了了解 JsonConvert.SerializeObject(_dt.ToList());   值如何返回到界面

   #region  --- 查询绑定信息 ---
[HttpGet]
public string GetQuery(string strEcNo)
{
//查询此EC单是否被绑定过
try
{
PcdbE.PcdbDataContext _Pc = new PcdbE.PcdbDataContext(); var _dt = from s in _Pc.EcDressLogs
where s.EcNo == strEcNo
select s; var _count = _dt.Count(); if(_count.Equals())
{
return "没有绑定记录";
} return JsonConvert.SerializeObject(_dt.ToList());
}
catch (Exception)
{
return "error";
} }
#endregion

2 -- 客户端如何Call 个API  ,先要在小程序管理员去注册API 发布的服务器域名, https://  这部分,好像之前做过了
BtnQuery 是绑定给界面的一个方法,在.wxml文件中

 <!--按钮-->
<view class="loginBtnView">
<button type="primary" bindtap="BtnQuery"> Query </button>
</view>

3 -- 在.js 文件中

 BtnQuery: function (){
if (this.data.ecno.length == 0)
{
wx.showToast({
title: '不能为空',
icon: 'loading',
duration: 2000
}) }else{ wx.request({
method: "GET",
url: 'https://(这里是你在微信小程序注册的你发布的API 域名)/api/pc/GetQuery', //仅为示例,并非真实的接口地址
data: {
strEcNo: this.data.ecno
},
header: {
'content-type': 'application/json' // 默认值
},
success: (res) => {
this.setData({
warning: res.data
})
var result = JSON.parse(res.data);
if(res.data !="")
{
console.log(result)
}
var x = result[0].Xdress
var y = result[0].Ydress
wx.navigateTo({ url: '/pages/tzdress/tzdress?xdress='+x+'&ydress='+y})
} }) }
},

主要的部分还是succes 返回里面的数据格式, 由于在API 中返回的是list ,我这里因为只有一个数据,所以取得是list里面第一个位置,当然如果是list表数据多,就需要写循环的方式了, 而最后面的wx.navigateTo 是为了在微信小程序客户端进行,页面跳转使用的,并传递了,值

4 --  那么问题来了:

wx.navigateTo({ url: '/pages/tzdress/tzdress?xdress='+x+'&ydress='+y}) 

传递的值,在对应页面又如何的接收?

对应就需要到tzdress.js文件中去看, onLoad 是小程序页面的生命周期中的一个页面加载部分,页面加载时执行, 而值传递,值都是在options中的。

所以取值就是options.xdress 参数名称即可

  onLoad: function (options) {

     var _this = this;
wx.getSystemInfo({
success: function (res) {
_this.setData({
view: {
Height: res.windowHeight - 150
},
longitude: options.xdress,
latitude: options.ydress,
circles: [{
latitude: options.ydress,
longitude: options.xdress,
color: '#FF0000DD',
fillColor: '#7cb5ec88',
radius: 3000,
strokeWidth: 1 }]
})
}
})
}

最新文章

  1. Android 6.0 使用HttpURLConnection 使用Get提交遇到405等问题。
  2. Mecanim分析
  3. 转 C# DataTable 和List之间相互转换的方法
  4. C语言可以包含.txt文件
  5. PHP 使用 GET 传递数组变量
  6. USB设备---URB请求快
  7. 随着时间的推移:构造SDK路径错误(An error occurred while automatically activating bundle com.android.ide.eclipse.adt)
  8. SAR 图像
  9. AVFoundation之如何从摄像头获取图像
  10. Java并发编程(2):线程中断(含代码)
  11. redis的hash类型
  12. 记一次lvs-tunnel模式的故障分析(7)
  13. Linux之网络管理
  14. springboot2.0拦截器和webconfigure配置
  15. oracle12 group by 拼接字符串
  16. 借鉴Glide思想二次封装Fresco
  17. 用JQuery操作元素的style属性
  18. linux下开启oracle服务和开启监听
  19. android-基础编程-RecyclerView
  20. 格子中输出|2015年蓝桥杯B组题解析第四题-fishers

热门文章

  1. js操作DOM在父元素中的结尾添加子节点注意
  2. python通过input()函数输入的内容是什么类型
  3. Android样式的开发:shape篇
  4. scala get ipv4 address
  5. CentOS使用virt-what知道虚拟机的虚拟化技术
  6. 三、K3 Cloud 开发插件《K3 Cloud插件开发新手指导 + K3 Cloud插件开发代码调试》
  7. Flask web开发之路二
  8. 极验(geetest)验证码
  9. MPD软件工作坊上海站本周末在上海举行
  10. Away3D引擎学习入门笔记