当前位置:   article > 正文

简易版 微信小程序开发之页面跳转、数据绑定、获取用户信息、获取用户位置信息_微信小程序个人主页如何绑定

微信小程序个人主页如何绑定

目录

一、全局配置app.json

二、数据绑定

2.1 编写home页面 

2.2 编写list页面

2.3 展示效果:

三、获取用户信息

3.1 方式一 

编写list页面

展示效果:

3.2 方式二

编写list页面

展示效果: 

四、获取用户位置信息

编写list页面

展示效果:


一、全局配置app.json

  1. {
  2. "pages":[
  3. "pages/home/home",
  4. "pages/message/message",
  5. "pages/contact/contact",
  6. "pages/list/list"
  7. ],
  8. "window":{
  9. "backgroundTextStyle":"light",
  10. "navigationBarBackgroundColor": "#2b4b6b",
  11. "navigationBarTitleText": "本地生活",
  12. "navigationBarTextStyle":"white",
  13. "backgroundColor": "#efefef",
  14. "onReachBottomDistance": 50
  15. },
  16. "tabBar": {
  17. "selectedColor": "#C00000",
  18. "list": [
  19. {
  20. "pagePath": "pages/home/home",
  21. "text": "首页",
  22. "iconPath": "/images/tabs/home.png",
  23. "selectedIconPath": "/images/tabs/home-active.png"
  24. },
  25. {
  26. "pagePath": "pages/message/message",
  27. "text": "消息",
  28. "iconPath": "/images/tabs/message.png",
  29. "selectedIconPath": "/images/tabs/message-active.png"
  30. },
  31. {
  32. "pagePath": "pages/contact/contact",
  33. "text": "联系我们",
  34. "iconPath": "/images/tabs/contact.png",
  35. "selectedIconPath": "/images/tabs/contact-active.png"
  36. }
  37. ]
  38. },
  39. "style": "v2",
  40. "sitemapLocation": "sitemap.json"
  41. }

二、数据绑定

2.1 编写home页面 

(1)home.wxml

  1. <!--pages/home/home.wxml-->
  2. <view class="menu">
  3. <view class="item">
  4. <image src="/static/link-01.png"></image>
  5. <text>精品</text>
  6. </view>
  7. <view class="item">
  8. <image src="/static/link-01.png"></image>
  9. <text>精品</text>
  10. </view>
  11. <view class="item">
  12. <image src="/static/link-01.png"></image>
  13. <text>精品</text>
  14. </view>
  15. <view class="item">
  16. <image src="/static/link-01.png"></image>
  17. <text>精品</text>
  18. </view>
  19. </view>
  20. <navigator url="/pages/list/list?id=566">跳转页面</navigator>

(2)home.wxss 

  1. /* pages/home/home.wxss */
  2. image {
  3. width: 100rpx;
  4. height: 100rpx;
  5. border-radius: 50rpx;
  6. }
  7. .menu {
  8. display: flex;
  9. /* 在水平方向排列 ,规定主轴方向*/
  10. flex-direction: row;
  11. /* 元素在水平方方向如何展示,规定在主轴方向如何展示:center */
  12. justify-content: space-around;
  13. }
  14. .menu .item {
  15. display: flex;
  16. flex-direction: column;
  17. align-items: center;
  18. }

2.2 编写list页面

(1)list.wxml

  1. <!--pages/list/list.wxml-->
  2. <!--轮播图结构-->
  3. <swiper class="swiper-container" indicator-dots indicator-color="white" indicator-active-color="black" autoplay interval="3000" circular>
  4. <swiper-item><view class="item">A</view></swiper-item>
  5. <swiper-item><view class="item">B</view></swiper-item>
  6. <swiper-item><view class="item">C</view></swiper-item>
  7. </swiper>
  8. <!--滚动视图结构-->
  9. <scroll-view class="container1" scroll-y>
  10. <view>A</view>
  11. <view>B</view>
  12. <view>C</view>
  13. </scroll-view>
  14. <!-- 数据绑定 -->
  15. <view>数据:{{ message }}</view>
  16. <button bindtap="checkData">点击修改数据</button>

(2)list.js

  1. // pages/list/list.js
  2. Page({
  3. /**
  4. * 页面的初始数据
  5. */
  6. data: {
  7. message: "Sd"
  8. },
  9. checkData() {
  10. // 修改数据
  11. this.setData({message: "ssdss"})
  12. },
  13. /**
  14. * 生命周期函数--监听页面加载
  15. */
  16. onLoad(options) {
  17. },
  18. /**
  19. * 生命周期函数--监听页面初次渲染完成
  20. */
  21. onReady() {
  22. console.log(this.options)
  23. },
  24. /**
  25. * 生命周期函数--监听页面显示
  26. */
  27. onShow() {
  28. },
  29. /**
  30. * 生命周期函数--监听页面隐藏
  31. */
  32. onHide() {
  33. },
  34. /**
  35. * 生命周期函数--监听页面卸载
  36. */
  37. onUnload() {
  38. },
  39. /**
  40. * 页面相关事件处理函数--监听用户下拉动作
  41. */
  42. onPullDownRefresh() {
  43. },
  44. /**
  45. * 页面上拉触底事件的处理函数
  46. */
  47. onReachBottom() {
  48. },
  49. /**
  50. * 用户点击右上角分享
  51. */
  52. onShareAppMessage() {
  53. }
  54. })

(3)list.json没变

2.3 展示效果:

(1)home页面的展示效果为:

(2)点击home页面中的“跳转页面” ,就可以跳转到list页面,list页面的展示效果为:

 (3)点击list页面中的“点击修改数据”按钮 ,就可以将页面上的“数据:Sd”修改为“数据:ssdss”,

 OK,数据绑定这个功能就简单介绍到这里。

三、获取用户信息

注意:要想获取用户信息,必须经过用户授权(button)

  • 已授权
  • 未授权,通过调用wx.opensetting({}) 

3.1 方式一 

编写list页面

(1)list.wxml

  1. <!--pages/list/list.wxml-->
  2. <view>当前用户名:{{ name }}</view>
  3. <ciew>头像:<image src="{{ path }}" style="height: 200rpx;width: 200rpx;"></image></ciew>
  4. <button bindtap="getUserInfo">获取用户名</button>

(2)list.js

  1. // pages/list/list.js
  2. getUserInfo() {
  3. // 打开配置,进行收到授权
  4. wx.openSetting({})
  5. var that = this
  6. // 获取用户名
  7. wx.getUserInfo({
  8. success: function(res) {
  9. console.log(res)
  10. that.setData({
  11. name: res.userInfo.nickName,
  12. path: res.userInfo.avatarUrl})
  13. },
  14. fail:function(res) {
  15. }
  16. })
  17. },

展示效果:

(1)点击home页面中的“跳转页面” ,就可以跳转到list页面,list页面的展示效果为:

(2)点击“获取用户名”按钮,则展示如下,

3.2 方式二

编写list页面

(1)list.wxml

  1. <!--pages/list/list.wxml-->
  2. <view>当前用户名:{{ name }}</view>
  3. <ciew>头像:<image src="{{ path }}" style="height: 200rpx;width: 200rpx;"></image></ciew>
  4. <button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">获取信息</button>

(2)list.js

注意:代码里的“var that = this”是因为直接在 wx.getUserInfo函数中调用this是获取不到setData的,因此必须在此 wx.getUserInfo函数的外部导入this,才可以。

  1. // pages/list/list.js
  2. bindGetUserInfo() {
  3. // 打开配置,进行收到授权
  4. wx.openSetting({})
  5. var that = this
  6. // 获取用户名
  7. wx.getUserInfo({
  8. success: function(res) {
  9. console.log(res)
  10. that.setData({
  11. name: res.userInfo.nickName,
  12. path: res.userInfo.avatarUrl})
  13. },
  14. fail:function(res) {
  15. }
  16. })
  17. },

展示效果: 

(1)点击home页面中的“跳转页面” ,就可以跳转到list页面,list页面的展示效果为:

 (2)点击“获取用户名”按钮,则展示如下, (3)可以看出来,与方式一的展示效果一样。

四、获取用户位置信息

编写list页面

(1)pages/list/list.wxml

  1. <!--pages/list/list.wxml-->
  2. <view bindtap="getLocalPath">{{ localPath }}</view>

(2)pages/list/list.js

  1. // pages/list/list.js
  2. getLocalPath() {
  3. var that = this
  4. // 获取用户位置信息
  5. wx.chooseLocation({
  6. success: function(res) {
  7. console.log(res)
  8. that.setData({localPath:res.address})
  9. }
  10. })
  11. },

展示效果:

(1)点击home页面中的“跳转页面” ,就可以跳转到list页面,list页面的展示效果为:

(2)点击“请选择位置”,则展示如下, 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/529471
推荐阅读
相关标签
  

闽ICP备14008679号