1. <tabs currentTab="{{currentTab}}" tabList="{{statusType}}" bind:changeTab="switchTab">
    2. <swiper current="{{currentTab}}" duration="300" bindchange="bindChange" style="height:{{windowHeight-35}}px;">
    3. <swiper-item wx:for="{{list}}" wx:key="*this">
    4. <view>{{item}}</view>
    5. <button wx:if="{{index==0}}" bindtap="uploadFile">Upload</button>
    6. <button wx:if="{{index==0}}" bindtap="downloadFile">Download</button>
    7. <button wx:if="{{index==0}}" bindtap="delFile">Delete</button>
    8. <image src="{{tempFile}}"></image>
    9. </swiper-item>
    10. </swiper>
    11. </tabs>
    1. // pages/componentPage/componentPage.js
    2. var self;
    3. Page({
    4. /**
    5. * 页面的初始数据
    6. */
    7. data: {
    8. statusType: [
    9. {
    10. name: "待付款",
    11. page: 0
    12. },
    13. {
    14. name: "待发货",
    15. page: 1
    16. },
    17. {
    18. name: "待收货",
    19. page: 2
    20. },
    21. {
    22. name: "待评价",
    23. page: 3
    24. },
    25. {
    26. name: "已完成",
    27. page: 4
    28. }
    29. ],
    30. currentTab: 0,
    31. list: ["page1", "Page2", "Page3", "Page4", "Page5"],
    32. windowHeight: ''
    33. },
    34. /**
    35. * 生命周期函数--监听页面加载
    36. */
    37. onLoad: function (options) {
    38. self = this;
    39. this.setData({
    40. windowHeight: wx.getSystemInfoSync().windowHeight
    41. });
    42. this.cloudRequire();
    43. },
    44. switchTab: function(event){
    45. console.log("page",event.detail.currentNum);
    46. if (this.data.currentTab === event.detail.currentNum) {
    47. return;
    48. }
    49. this.setData({
    50. currentTab: event.detail.currentNum
    51. });
    52. },
    53. bindChange: function(event){
    54. this.setData({
    55. currentTab: event.detail.current
    56. });
    57. },
    58. cloudRequire(){
    59. if(!wx.cloud){
    60. console.error('请使用2.2.3以上的基础库来使用云函数');
    61. } else{
    62. wx.cloud.init({
    63. traceUser:true
    64. });
    65. }
    66. wx.cloud.callFunction({
    67. name: 'return',
    68. data:{
    69. a:2,
    70. b:6
    71. },
    72. complete: res => {
    73. //console.log('callFunction return result: ',res);
    74. }
    75. });
    76. const db = wx.cloud.database();
    77. const todos = db.collection('todos');
    78. const todo = todos.doc('6aebd2215e7f000c001ac5ab2b839d05');
    79. console.log("todo--- ",todo);
    80. // 添加数据
    81. // todos.add({
    82. // // data字段表示需要新增的JSON数据
    83. // data: {
    84. // description: 'learn cloud database',
    85. // due: new Date('2020-03-28'),
    86. // tags: ['Cloud', 'Database'],
    87. // location: new db.Geo.Point(113,23),
    88. // done: false
    89. // },
    90. // success: function(res){
    91. // console.log(res);
    92. // }
    93. // });
    94. // 查询数据
    95. // todo.get({
    96. // complete(res){
    97. // console.log('查询数据',res);
    98. // }
    99. // });
    100. todos.where({
    101. "done": false
    102. }).get({
    103. complete(res){
    104. console.log('查询数据', res);
    105. }
    106. });
    107. // update数据 (只会更新指定field)
    108. // todo.update({
    109. // data: {
    110. // description: '我修改的数据描述'
    111. // },
    112. // success: (res) => {
    113. // }
    114. // });
    115. // set会整个覆盖掉,如果todo不存在,将新建一条数据
    116. todo.set({
    117. // data字段表示需要set的JSON数据
    118. data: {
    119. description: 'learn cloud database 12',
    120. due: new Date('2020-03-28'),
    121. tags: ['Cloud', 'Database'],
    122. location: new db.Geo.Point(113,23),
    123. done: false
    124. },
    125. success: function(res){
    126. console.log(res);
    127. }
    128. });
    129. // 删除数据remove
    130. todo.remove({
    131. success: function(res){
    132. console.log(res);
    133. }
    134. });
    135. todos.where({
    136. "done": true
    137. }).remove();
    138. },
    139. downloadFile: function (e) {
    140. wx.cloud.downloadFile({
    141. fileID: 'cloud://d666.6436-d666-1301631881/aa.jpg',
    142. success(res){
    143. console.log(res);
    144. self.setData({
    145. tempFile: res.tempFilePath
    146. });
    147. },
    148. fail(res){
    149. console.log(res);
    150. }
    151. });
    152. },
    153. delFile: function (e) {
    154. wx.cloud.deleteFile({
    155. fileList: ['cloud://d666.6436-d666-1301631881/aa.jpg'],
    156. success(res) {
    157. console.log(res);
    158. },
    159. fail(res) {
    160. console.log(res);
    161. }
    162. });
    163. },
    164. uploadFile: function(e){
    165. wx.chooseImage({
    166. success: function(res) {
    167. console.log(res);
    168. wx.cloud.uploadFile({
    169. cloudPath: 'aa.jpg',
    170. filePath: res.tempFilePaths[0],
    171. success(r){
    172. console.log('uploadFile',r);
    173. },
    174. fail(err){
    175. console.log('uploadFile fail', err);
    176. }
    177. })
    178. },
    179. })
    180. },
    181. /**
    182. * 生命周期函数--监听页面初次渲染完成
    183. */
    184. onReady: function () {
    185. },
    186. /**
    187. * 生命周期函数--监听页面显示
    188. */
    189. onShow: function () {
    190. },
    191. /**
    192. * 生命周期函数--监听页面隐藏
    193. */
    194. onHide: function () {
    195. },
    196. /**
    197. * 生命周期函数--监听页面卸载
    198. */
    199. onUnload: function () {
    200. },
    201. /**
    202. * 页面相关事件处理函数--监听用户下拉动作
    203. */
    204. onPullDownRefresh: function () {
    205. },
    206. /**
    207. * 页面上拉触底事件的处理函数
    208. */
    209. onReachBottom: function () {
    210. },
    211. /**
    212. * 用户点击右上角分享
    213. */
    214. onShareAppMessage: function () {
    215. }
    216. })