欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:web學(xué)習(xí)筆記(八十)

柚子快報激活碼778899分享:web學(xué)習(xí)筆記(八十)

http://yzkb.51969.com/

目錄

1.小程序?qū)崿F(xiàn)微信一鍵登錄

2. 小程序的授權(quán)流程

?3.小程序配置vant庫

4.小程序配置分包?

5.小程序配置獨(dú)立分包

6.小程序分包預(yù)下載

1.小程序?qū)崿F(xiàn)微信一鍵登錄

要先實現(xiàn)小程序一鍵登錄首先我們需要給按鈕設(shè)置一個綁定事件,然后在綁定事件內(nèi)部通過wx.login來獲取登錄憑證code,然后將將code+appid+secret傳遞到開發(fā)者服務(wù)器,進(jìn)行登錄操作,發(fā)送post請求,此時就需要后端進(jìn)行接口校驗code和appid是否正確,是否配對,如果校驗成功,后端回利用openid和session_key加密生成token登錄態(tài),返回給小程序。然后前端再將token進(jìn)行持久化存儲。

Page({

/**

* 頁面的初始數(shù)據(jù)

*/

data: {},

login() {

// 1.通過wx.login獲取登陸憑證code

wx.login({

success: (res) => {

console.log(res.code);

//2. 將code+appid+secret傳遞到開發(fā)者服務(wù)器,進(jìn)行登錄操作,發(fā)送post請求

// 3.開發(fā)者服務(wù)器利用jscode2session接口校驗code和appid是否正確,是否配對,如果校驗成功,后端回利用openid和session_key加密生成token登錄態(tài),返回給小程序

// 4.小程序端將token存儲起來,一鍵登錄就完成了。此后發(fā)送請求需在請求頭中攜帶token,讓開發(fā)者服務(wù)器驗證token是否正確,正確就返回數(shù)據(jù)。

wx.request({

url: "http://localhost:3000/login",

method: "post",

data: {

code: res.code,

},

success: (data) => {

console.log(data.data.token);

// 做持久化存儲

wx.setStorageSync("token", data.data.token);

// 向后端發(fā)送請求,獲取購物車列表

wx.request({

url: "http://localhost:3000/carts",

header: {

auth: wx.getStorageSync("token"),

},

success: ({ data }) => {

console.log("---", data);

},

});

},

});

},

});

},

});

2. 小程序的授權(quán)流程

當(dāng)我們的小程序需要定位或者是麥克風(fēng)權(quán)限的時候是需要向用戶發(fā)起授權(quán)請求的,。然后發(fā)起彈窗詢問用戶是否同意授權(quán)小程序該權(quán)限,如果用戶之前已經(jīng)同意授權(quán)則不會出現(xiàn)彈窗。在微信開發(fā)文檔中有很多權(quán)限的接口,下面編寫的是獲取定位權(quán)限的實例,可以按照這個思路自行編寫其他權(quán)限的相關(guān)代碼。

getAddress() {

// 獲取用戶精確位置

// 1.先查詢是否已授權(quán)

wx.getSetting({

success(res) {

console.log(res.authSetting);

if (!res.authSetting["scope.userLocation"]) {

// 2.調(diào)用接口進(jìn)行授權(quán) wx.authorize

wx.authorize({

scope: "scope.userLocation",

success() {

console.log("用戶同意授權(quán)");

wx.getLocation();

},

fail() {

console.log("用戶拒絕授權(quán)");

// 3.如果用戶拒絕授權(quán),需要通過wx.openSetting再次進(jìn)行授權(quán),此時進(jìn)入授權(quán)頁面

wx.showModal({

title: "提示",

content: "定位功能必須開啟定位權(quán)限",

success: () => {

wx.openSetting({

success(res) {

console.log("開啟成功", res.authSetting);

},

});

},

});

},

});

} else {

}

},

});

},

?3.小程序配置vant庫

(1)在終端輸入?npm i @vant/weapp命令

(2)把a(bǔ)pp.js文件中的"style":"v2"去除(這句話是小程序用來渲染頁面用到,小程序的新版基礎(chǔ)組件強(qiáng)行加上了許多樣式,難以覆蓋,不關(guān)閉將造成部分組件的樣式混亂。)

(3)構(gòu)建npm包 (因為我們通過npm安裝的包是node的包,我們需要編譯成小程序的包才可以使用)。

點擊工具>構(gòu)建即可。

?

編譯完成后會生成下列文件夾

(5)在app.json中 進(jìn)行全局注冊

eg:注冊vue中的Button組件

"usingComponents": {

"van-button": "@vant/weapp/button/index"

}

?

4.小程序配置分包?

? ? ?分包主要用來解決小程序體積過大的問題,小程序本身就有輕量化的特點,因此微信對小程序的體積是有要求的(整個小程序所有的分包大小不超過20MB,開通虛擬支付后的小游戲不超過30MB單個分包/主包不能超過2MB),采用分包可以優(yōu)化小程序首次啟動的下載時間(和路由懶加載的原理類似),還可以在多團(tuán)隊共同開發(fā)時更好的解耦協(xié)作。注意:TabBar頁面只能放在主包里面。

?(1)創(chuàng)建subpackage文件夾,在里面創(chuàng)建pages文件夾,然后將需要放到分包且不是TabBar的頁面移動到pages文件夾內(nèi),

(2) 在app.json中修改路由(注意:需要將pages中不需要的路由給刪除掉)

"subpackages": [

{

"root": "subpackages",

"pages": ["pages/Login/Login", "pages/lifecycle/lifecycle"]

}

],

5.小程序配置獨(dú)立分包

? ? ? ? ?獨(dú)立分包和小程序內(nèi)部的分包和主包都沒關(guān)系,他是單獨(dú)獨(dú)立出來的,通常我們將打開小程序時加載的廣告頁面放置到獨(dú)立分包內(nèi)部。

配置獨(dú)立分包和分包的步驟是一樣的,只不過是多了一個? "independent": true的配置來證明這個分包是獨(dú)立分包。在app.js頁面給分包添加配置:

{

"root": "singlepackage",

"pages": ["pages/ad/ad"],

"independent": true

}

6.小程序分包預(yù)下載

? ? ? ?因為小程序在加載頁面時只會先加載主包的頁面,分包的頁面是被點擊后才會進(jìn)行下載的操作,這樣會導(dǎo)致用戶首次進(jìn)入分包頁面速度較慢,因此我們可以通過分包預(yù)下載將點擊量高的頁面所在分包提前下載出來,提供用戶的體驗感(注意:分包預(yù)下載是異步操作,系統(tǒng)會先將主包下載完成后進(jìn)行預(yù)下載的操作)。

"preloadRule": {

"pages/index/index": {

"network": "all",

"packages": ["subpackages"]

}

},

柚子快報激活碼778899分享:web學(xué)習(xí)筆記(八十)

http://yzkb.51969.com/

參考閱讀

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://m.gantiao.com.cn/post/19247551.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄