index.vue 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. <template>
  2. <view class="content">
  3. <view class="set_left">
  4. <view class="card_set_basic" :class="item.flag ? 'card_item_set' : ''" v-for="(item,index) in list"
  5. :key="index" @click="select(item)">
  6. <view class="title_sic center_in">{{item.title}}</view>
  7. </view>
  8. </view>
  9. <view class="set_right">
  10. <!-- 设备列表 -->
  11. <devicelist v-if="current == '1'"></devicelist>
  12. <!-- 通讯设置 -->
  13. <communicate v-if="current == '2'"></communicate>
  14. <!-- 系统控制 -->
  15. <systemsControl v-if="current == '3'"></systemsControl>
  16. <!-- 网络设置 -->
  17. <networkSettings v-if="current == '4'"></networkSettings>
  18. </view>
  19. </view>
  20. </template>
  21. <script>
  22. import devicelist from './devicelist.vue' // 设备列表
  23. import communicate from './communicate.vue' // 通讯设置
  24. import systemsControl from './systemsControl.vue' // 系统控制
  25. import networkSettings from './networkSettings.vue' // 网络设置
  26. export default {
  27. components: { //在这里注册相应的组件
  28. devicelist,
  29. communicate,
  30. systemsControl,
  31. networkSettings
  32. },
  33. data() {
  34. return {
  35. title: 'Hello',
  36. list: [{
  37. id: '1',
  38. flag: true,
  39. title: '设备列表',
  40. }, {
  41. id: '2',
  42. flag: false,
  43. title: '通信设置',
  44. }, {
  45. id: '3',
  46. flag: false,
  47. title: '系统控制',
  48. }, {
  49. id: '4',
  50. flag: false,
  51. title: '网络设置',
  52. }, {
  53. id: '5',
  54. flag: false,
  55. title: '个人中心',
  56. }, {
  57. id: '6',
  58. flag: false,
  59. title: '查看地址',
  60. }],
  61. current: '1',
  62. }
  63. },
  64. onLoad() {
  65. },
  66. mounted() {
  67. const that = this
  68. // uni.getSystemInfo({
  69. // success: function(info) {
  70. // console.log('品牌:' + info);
  71. // that.list = info
  72. // }
  73. // });
  74. },
  75. methods: {
  76. select(event) {
  77. this.current = event.id
  78. this.list.forEach(item => {
  79. if (item.id == event.id) {
  80. item.flag = true
  81. } else {
  82. item.flag = false
  83. }
  84. })
  85. }
  86. }
  87. }
  88. </script>
  89. <style>
  90. .content {
  91. display: flex;
  92. align-items: center;
  93. justify-content: space-between;
  94. height: 100%;
  95. }
  96. .set_left {
  97. width: 180rpx;
  98. margin: 10rpx;
  99. height: calc(100% - 20rpx);
  100. border-radius: 4rpx;
  101. background-color: #EBEEF5;
  102. }
  103. .card_set_basic {
  104. cursor: pointer;
  105. }
  106. .card_item_set {
  107. position: relative;
  108. background-color: #fff;
  109. }
  110. .card_item_set::after {
  111. position: absolute;
  112. top: 0;
  113. left: 0;
  114. bottom: 0;
  115. content: '';
  116. width: 2rpx;
  117. height: 100%;
  118. background-color: #18b566;
  119. }
  120. .title_sic {
  121. font-size: 18rpx;
  122. padding: 8rpx 0rpx;
  123. margin-top: 10rpx;
  124. }
  125. .set_right {
  126. flex: 1;
  127. margin: 10rpx 10rpx 10rpx 0rpx;
  128. height: calc(100% - 20rpx);
  129. /* border: 1rpx solid #EBEEF5; */
  130. border-radius: 4rpx;
  131. }
  132. .title {
  133. font-size: 36rpx;
  134. color: #8f8f94;
  135. }
  136. </style>