微信小程序速查笔记

这个微信小程序也出来好长时间了,一直想做一个属于自己的小程序,这不说动手就动手实现一个吧,比较简易,中间也遇到不少问题,记录一下,方便以后自己查阅。

微信小程序的结构

image.png

默认没有这么些文件夹的,只有index ,然后这个标识 app 开头的文件都是一些全局的设置。可以自己查看下,都有注释,就从这个配置开始说。

修改启动页面

默认启动页面是index页面,如果要修改,打开app.json配置文件,在顶部你会发现有一个pages的配置,如下:

"pages": [

"pages/home/home"

只需要将我们的想要显示的页面的路径写在 第一个 就可以成为启动页,特别注意路径一定要正确。

当然你会新建很多页面,所有的页面都必须写在这个里面,不然跳转的时候会找不到。

底部tab栏切换

就是底部tab栏切换,同样还是在app.json 配置文件中修改如下:

  "tabBar": {
  "color": "#333333",
  "selectedColor": "#2B91D8",
  "backgroundColor": "#eee",
  "borderStyle": "white",
      "list": [
    {
  "pagePath": "pages/home/home",
  "text": "首页",
  "iconPath": "pages/home/images/tab_icon_home_nor.png",
  "selectedIconPath": "pages/home/images/tab_icon_home_pre.png"
    },
    {
  "pagePath": "pages/myCenter/myCenter",
  "text": "我的",
  "iconPath": "pages/home/images/tab_icon_center_nor.png",
  "selectedIconPath": "pages/home/images/tab_icon_center_pre.png"
    }
  ]
},

这里的 pagePath 就是页面的路径,text文字,iconPath图标,注意图片一定要带后缀,selectedIconPath点击态的图标,各自换成你自己的就行,问题不会太大。

加载中

如下:
image.png

有标签可以直接显示这个,在wxml文件中编写:

<loading hidden="{{hidden}}" bindchange="loadingChange">  
       加载中...  
</loading>  

可以控制显示还是隐藏,在.js文件中可以控制:

data: {
    hidden: false,
  }

可以在data 底下配置默认值,hidden: false 默认不显示,赋值的时候必须在这里面写:

that.setData({
    hidden: true
  })

网络请求

 wx.request({
//网络请求地址url
url: 'https://xx',
header: {
  // 'content-type': 'application/x-www-form-urlencoded'
  'content-type': 'application/json'
  // 'content-type': 'text/xml'
},
//请求头参数配置
data: {
  page: pageNo,
  timestamp: timeStamps

},
method: "POST",

success: function (res) {

  //xmlstring2json  是我使用第三方xml转json的一个库
  var xml2json = require('..//lib/xmlstring2json/dist/xml2json');
  var json = JSON.stringify(xml2json(res.data), null, 4);


  var jsonObject = xml2json(res.data);
  var jokeObject = jsonObject.root.joke
  //timestamp
  if(pageNo == 0){
    timeStamps = jsonObject.root.timestamp.text
  }


 // console.log('json::' + jsonObject.root.timestamp.text)
  // var data = new Array();
  // for (var i = 0; i < jokeObject.length;i++){
  //   var text = JSON.stringify(jokeObject[i].text).replace("#", "")
  //   //JSON.parse(text).text
  //   var value = JSON.parse(text).text;
  //   data.push(value)
  // }
  // console.log('data:::' + jokeObject[0].text.text );

  // var l =  jokeObject;
  var l;
  if(pageNo == 0){
    l = jokeObject

  }else{
    var l = that.data.list;
    for (var i = 0; i < jokeObject.length; i++) {
      l.push(jokeObject[i])
    } 
  }
    //页面绑定的数据赋值
  that.setData({
    list: l
  })

  pageNo++

  that.setData({
    hidden: true
  })
},
fail : function(s){
  wx.showModal({
    title: '提示',
    content: '请求接口失败' + JSON.stringify(s)
  })
}

要进行网络请求,首先测试阶段可以将开发工具里的:

image.png

最后一个选项勾选上,不校验…,同时管理员还需在后台配置网络请求的域名,两个缺一不可。

-------------本文结束感谢您的阅读-------------