menu.vue 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <template>
  2. <view>
  3. <view class="margin-top grid col-3 padding-sm">
  4. <view class="padding-sm" v-for="(item,index) in colorList" :key="index">
  5. <view class="padding radius text-center shadow-blur" :class="'bg-' + item.name" @click="onItemClick(item)">
  6. <view class="text-lg">{{item.title}}</view>
  7. </view>
  8. </view>
  9. </view>
  10. </view>
  11. </template>
  12. <script>
  13. export default {
  14. data() {
  15. return {
  16. colorList: [{
  17. title: '质量反馈',
  18. name: 'red',
  19. event: 'toList',
  20. }]
  21. }
  22. },
  23. mounted() {
  24. //#ifdef MP-WEIXIN
  25. wx.hideHomeButton() //隐藏微信小程序的返回主页按钮
  26. //#endif
  27. },
  28. onLoad() {
  29. uni.getStorage({
  30. key: 'token',
  31. fail() {
  32. //从缓存中未获取到token失败时跳转登录界面
  33. uni.redirectTo({
  34. url: '../login/login'
  35. })
  36. }
  37. });
  38. },
  39. onNavigationBarButtonTap(e) {
  40. //若不是点击退出登录按钮,则直接返回
  41. if (e.index != 0) return
  42. //清空token缓存
  43. uni.removeStorage({
  44. key: 'token',
  45. success: function(res) {
  46. //清空token缓存后,跳转至登录界面
  47. uni.redirectTo({
  48. url: '../login/login'
  49. })
  50. },
  51. fail() {
  52. //从清空token缓存失败时提示
  53. uni.showToast({
  54. title: '退出登录失败,原因是:未能清空token缓存!',
  55. icon: 'none'
  56. })
  57. }
  58. });
  59. },
  60. methods: {
  61. onItemClick(e) {
  62. if (e.event == undefined) {
  63. uni.showToast({
  64. title: '当前菜单项未设置点击事件!',
  65. icon: 'none'
  66. })
  67. } else {
  68. //触发菜单项的点击事件
  69. this[e.event]();
  70. }
  71. },
  72. toList() {
  73. //跳转值质量反馈列表页面
  74. uni.navigateTo({
  75. url: "../billlist/billlist"
  76. });
  77. }
  78. }
  79. }
  80. </script>
  81. <style>
  82. </style>