溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在微信小程序中使用全局變量

發(fā)布時(shí)間:2021-05-10 17:42:36 來(lái)源:億速云 閱讀:306 作者:Leah 欄目:web開(kāi)發(fā)

如何在微信小程序中使用全局變量?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

全局變量的作用

在微信小程序開(kāi)發(fā)中,會(huì)遇到一個(gè)很實(shí)際的應(yīng)用場(chǎng)景,就是一個(gè)變量會(huì)在多個(gè)頁(yè)面進(jìn)行使用。

例如:

1. 在微信小程序開(kāi)發(fā)中使用高德地圖的微信小程序開(kāi)發(fā),其中key值就需要在多個(gè)頁(yè)面使用;

2. 在微信小程序開(kāi)發(fā)電商平臺(tái)時(shí)同樣,比如客服電話,就需要在多個(gè)頁(yè)面使用。

在以上兩種類似的場(chǎng)景中,開(kāi)發(fā)者就需要使用全局變量,當(dāng)然也有開(kāi)發(fā)者說(shuō)不能每個(gè)page頁(yè)面都定義一個(gè)?如果客服電話改變,如果客服要求采用他的高德key,這個(gè)時(shí)候只需要修改全局,就能進(jìn)行整個(gè)小程序的修改,如果每個(gè)page一個(gè)變量,將會(huì)在修改中花費(fèi)大量的時(shí)間做低效的工作。所以可以看出全局變量在這里的作用就是提高開(kāi)發(fā)效率!

如何定義全局變量

方法一:用APP定義全局變量

在app.js中的APP({})傳入對(duì)象中定義一個(gè)全局屬性globalData,作為保存全局變量的對(duì)象。

示例代碼:

聲明變量進(jìn)行引入!

// 引入高德地圖js
const amap = require('./src/js/amap-wx.js');
// 引入接口js
const urlList = require('./src/js/config.js');
// 引入wetoast插件js
const { WeToast } = require('./src/wetoast/wetoast.js');
// 全局變量高德地圖key
const key = 'c290b7e016c85e8f279b2f80018c';
// 全局變量服務(wù)電話
const phone = '400-007-859';

進(jìn)行全局變量的賦值!

App({
 globalData: {//全局變量
  amap: amap,
  key: key,
  phone: phone,
  urlList: urlList.urlList
 }
})

方法一全局變量的使用:

//在page頁(yè)面引入app,同時(shí)聲明變量,獲得所需要的全局變量
const app = getApp();
const urlList = app.globalData.urlList;

方法二:用引入js的方法定義全局變量

在公用js文件夾中創(chuàng)建一個(gè)保存全局變量的js文件

實(shí)例:我在公用文件夾src下的js文件夾中創(chuàng)建的三個(gè)保存全局變量的文件:base64.js、config.js、data.js

如何在微信小程序中使用全局變量

這三個(gè)文件作用:

1. base64.js保存背景圖標(biāo)轉(zhuǎn)化的base64碼
2. config.js保存request請(qǐng)求數(shù)據(jù)的路徑
3. data.js 保存初次開(kāi)發(fā)的模擬數(shù)據(jù)

示例代碼:

let basePath = 'https://xxxxx.com';
let urlList = {
  goodsListUrl: basePath + '/goodsList',
  shopCartUrl: basePath + '/shopCart',
  ...
}
module.exports = {
 urlList: urlList
}

使用方法:

// 引入接口js
const urlList = require('./src/js/config.js');
wx.request({
  url: urlList.urlList.goodsListUrl,
  data: {},
  success: res => {}
})

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI