From 795f82a11561c33d4ee90d5be118018616bff992 Mon Sep 17 00:00:00 2001 From: mt51 Date: Fri, 29 Nov 2019 14:12:16 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=B0=86=E7=9C=81=E5=B8=82=E5=8C=BA?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=AD=98=E5=82=A8=E5=9C=A8=E4=BA=91=E5=BC=80?= =?UTF-8?q?=E5=8F=91=E6=95=B0=E6=8D=AE=E5=BA=93=E4=B8=AD=20(#2428)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/app.js | 11 ++++++++++- example/pages/area/index.js | 17 ++++++++++++----- packages/area/README.md | 23 +++++++++++++++++++++++ 3 files changed, 45 insertions(+), 6 deletions(-) diff --git a/example/app.js b/example/app.js index d439e30e..5b79b799 100644 --- a/example/app.js +++ b/example/app.js @@ -1,3 +1,12 @@ App({ - globalData: {} + globalData: {}, + onLaunch() { + if (!wx.cloud) { + console.error('请使用 2.2.3 或以上的基础库以使用云能力'); + } else { + wx.cloud.init({ + env: 'production-7dtfw' + }); + } + } }); diff --git a/example/pages/area/index.js b/example/pages/area/index.js index d9945fcc..7023ccaf 100644 --- a/example/pages/area/index.js +++ b/example/pages/area/index.js @@ -1,6 +1,8 @@ import Page from '../../common/page'; import Toast from '../../dist/toast/toast'; +const db = wx.cloud.database(); + Page({ data: { areaList: {}, @@ -9,15 +11,20 @@ Page({ }, onShow() { - wx.request({ - url: 'https://cashier.youzan.com/wsctrade/uic/address/getAllRegion.json', - success: response => { + db.collection('region').limit(1).get().then(res => { + if (res.data && res.data.length > 0) { this.setData({ loading: false, - areaList: response.data.data + areaList: res.data[0] }); } - }); + }) + .catch(err => { + console.log(err); + this.setData({ + loading: false, + }); + }); }, onChange(event) { diff --git a/packages/area/README.md b/packages/area/README.md index dc2ab2dc..75807bd7 100644 --- a/packages/area/README.md +++ b/packages/area/README.md @@ -86,6 +86,29 @@ |-----------|-----------|-----------|-------------| | reset | code: string | - | 根据 code 重置所有选项,若不传 code,则重置到第一项 | + +### 使用云开发获取省市区数据 + +实际项目中,可以通过小程序云开发的能力,将省市区数据保存在云开发的数据库中,并在小程序中使用云开发的接口异步获取数据。 + +在小程序中使用云能力之前需要先调用`wx.could.init`方法完成云能力的初始化。 + +``` js +const db = wx.cloud.database(); + +db.collection('region').limit(1).get() +.then(res => { + if (res.data && res.data.length > 0) { + this.setData({ + areaList: res.data[0] + }); + } +}) +.catch(err => { + console.log(err); + }); +``` + ### 省市区列表数据格式 整体是一个 Object,包含 `province_list`, `city_list`, `county_list` 三个 key。