知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >
微信小程序部分習(xí)題
發(fā)表時(shí)間:2020-11-19
發(fā)布人:葵宇科技
瀏覽次數(shù):43
1. 簡(jiǎn)單描述下微信小程序的目錄結(jié)構(gòu)?
app.js 小程序邏輯
app.json 小程序公共配置
app.wxss 小程序公共樣式表
js 頁(yè)面邏輯
wxml 頁(yè)面結(jié)構(gòu)
json 頁(yè)面配置
wxss 頁(yè)面樣式表
2. wxml與標(biāo)準(zhǔn)的html的異同?
開發(fā)工具限制:WXML僅能在微信小程序開發(fā)工具中預(yù)覽,而HTML可以在瀏覽器內(nèi)預(yù)覽。
組件封裝不同:WXML對(duì)組件進(jìn)行了重新封裝,為后續(xù)的性能優(yōu)化提供了可能,
同時(shí)避免開發(fā)者寫出低質(zhì)量的代碼。
沒(méi)有DOM樹:小程序運(yùn)行在JS Core內(nèi),沒(méi)有DOM樹和window對(duì)象,沒(méi)有辦法使用相關(guān)API。
3. 小程序怎樣進(jìn)行本地存儲(chǔ)的讀寫?
同步:(1)wx.setStorageSync(); //存儲(chǔ)值
(2)wx.removeStorageSync(); // 移除指定的值
(3)wx.getStorageSync(); // 獲取值
(4)wx.getStorageInfoSync(); // 獲取當(dāng)前 storage 中所有的 key
(5)wx.clearStorageSync(); // 清除所有的key
異步:(1)wx.setStorage(); //存儲(chǔ)值
(2)wx.removeStorage(); // 移除指定的值
(3)wx.getStorage(); // 獲取值
(4)wx.getStorageInfo(); // 獲取當(dāng)前 storage 中所有的 key
(5)wx.clearStorage(); // 清除所有的key
4. 分析下微信小程序的優(yōu)劣勢(shì)?
微信小程序優(yōu)勢(shì):
1)、使用方便:掃碼即用,相較于APP而言不用下載、不用安裝,
還可以直接添加到手機(jī)桌面,為手機(jī)節(jié)省了電量和大量?jī)?nèi)存;
2)、流量入口眾多:公眾號(hào)菜單、朋友圈(太陽(yáng)碼)、微信群、
支持長(zhǎng)按二維碼識(shí)別、附近的小程序、統(tǒng)一的小程序入口、搜一搜、
公眾號(hào)圖文推送、支持發(fā)會(huì)員卡券(官方的)、支持會(huì)員卡直接打開小程序;
3)、潛在用戶多:小程序依托在微信9億多用戶群體上,不用擔(dān)心找不到用戶,
只需專心做好小程序營(yíng)銷;
4)、助力新零售:小程序是新零售的最好載體,將是未來(lái)線下門店的發(fā)展趨勢(shì),
如果企業(yè)擁有線下實(shí)體門店,小程序是最佳選擇,可以為企業(yè)更好地切合線上線下的流量;
5)、符合消費(fèi)場(chǎng)景:小程序可以與消費(fèi)者在任意場(chǎng)景建立鏈接,即用即走,符合大多數(shù)消費(fèi)場(chǎng)景。
微信小程序劣勢(shì):
1)、功能不多:微信小程序?qū)儆谖⑿?#xff0c;自然也就受限于微信。
由于API的限制,小程序的總代碼量不能超過(guò)2M,這意味著小程序規(guī)模有限,
這對(duì)一些中大型的應(yīng)用而言是一個(gè)致命的缺陷。
目前相較于APP而言,微信小程序只是能夠?qū)崿F(xiàn)基本操作,
雖然隨著開發(fā)技術(shù)的發(fā)展,小程序已經(jīng)和APP很接近,但差距肯定是存在的;
2)、所有更新需要經(jīng)過(guò)騰訊的審核,才能應(yīng)用到小程序中,
這給應(yīng)用的更新帶來(lái)一定的風(fēng)險(xiǎn),企業(yè)希望新加的功能若無(wú)法審核通過(guò),
則毫無(wú)解決辦法;
3)、不能用小程序來(lái)發(fā)推送通知,必須要由用戶操作才可以;
4)、小程序無(wú)法被分享到微信朋友圈,錯(cuò)失這一流量巨大的入口;
5)、用戶留存差,正是因?yàn)榧从眉醋叩奶攸c(diǎn),微信小程序?qū)τ谟脩舻牧舸嫦噍^于APP、
微信公眾號(hào)都是非常薄弱的,這就要求企業(yè)的營(yíng)銷能力非常突出,
才能持續(xù)增加用戶對(duì)小程序的粘性。
5. 小程序的數(shù)據(jù)驅(qū)動(dòng)和vue的雙向綁定有何異同?
小程序中的數(shù)據(jù)雙向綁定
(1)、通過(guò) bindinput 綁定文本框的輸入事件
(2)、在 data 中聲明一個(gè)變量 content ,將其動(dòng)態(tài)綁定成文本框的 value 值
(3)、在 bindinput 事件中通過(guò)事件參數(shù) e.detail.value 可以獲取到文本框中最新的 value 值
(4)、通過(guò) this.setData 將文本框最新的 value 值 賦值給 動(dòng)態(tài)綁定的value值 content 即可實(shí)現(xiàn)數(shù)據(jù)的雙向綁定
vue中的數(shù)據(jù)雙向綁定
(1)、首先為文本框綁定 @input 監(jiān)聽文本框的輸入事件
(2)、為文本框動(dòng)態(tài)綁定 value 屬性,其值是在data中定義的變量
(3)、在 @input綁定的事件中 通過(guò)事件參數(shù) event.target.value 可以獲取到 input 框中最新的value值
(4)、將其重新獲取到的 value 賦值給 value值動(dòng)態(tài)綁定的那個(gè)變量
區(qū)別
綁定事件不同,以及獲取value值的具體方式不同,
以及在小程序中設(shè)置data中的數(shù)據(jù),
需要調(diào)用 this.setData方法進(jìn)行設(shè)置
6. 簡(jiǎn)述下wx.navigateTo(), wx.redirectTo(), wx.switchTab(), wx.navigateBack(), wx.reLaunch()的區(qū)別?
(1)wx.navigateTo():
用于保留當(dāng)前頁(yè)面、跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面,使用 wx.navigateBack可以返回到原頁(yè)面。
對(duì)于頁(yè)面不是特別多的小程序,通常推薦使用 wx.navigateTo進(jìn)行跳轉(zhuǎn),
以便返回原頁(yè)面,以提高加載速度。
當(dāng)頁(yè)面特別多時(shí),則不推薦使用。
(2)wx.redirectTo():
當(dāng)頁(yè)面過(guò)多時(shí),被保留頁(yè)面會(huì)擠占微信分配給小程序的內(nèi)存,
或是達(dá)到微信所限制的 5 層頁(yè)面棧。這時(shí)應(yīng)該考慮選擇 wx.redirectTo。
wx.redirectTo()用于關(guān)閉當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面。
這樣的跳轉(zhuǎn),可以避免跳轉(zhuǎn)前頁(yè)面占據(jù)運(yùn)行內(nèi)存,但返回時(shí)頁(yè)面需要重新加載,
增加了返回頁(yè)面的顯示時(shí)間。
(3)wx.reLaunch():
wx.reLaunch()與 wx.redirectTo()的用途基本相同,
只是 wx.reLaunch()先關(guān)閉了內(nèi)存中所有保留的頁(yè)面,
再跳轉(zhuǎn)到目標(biāo)頁(yè)面。
(4)wx.switchTab():
對(duì)于跳轉(zhuǎn)到 tab bar 的頁(yè)面,
最好選擇 wx.switchTab(),它會(huì)先關(guān)閉所有非 tab bar 的頁(yè)面。
其次,也可以選擇 wx.reLaunch(),它也能實(shí)現(xiàn)從非 tab bar 跳轉(zhuǎn)到 tab bar,
或在 tab bar 間跳轉(zhuǎn),效果等同 wx.switchTab()。
使用其他跳轉(zhuǎn) API 來(lái)跳轉(zhuǎn)到 tab bar,則會(huì)跳轉(zhuǎn)失敗。
(5)wx.navigateBack():
用于關(guān)閉當(dāng)前頁(yè)面,并返回上一頁(yè)面或多級(jí)頁(yè)面。
開發(fā)者可通過(guò) getCurrentPages() 獲取當(dāng)前的頁(yè)面棧,決定需要返回幾層。
這個(gè) API 需要填寫的參數(shù)只有 delta,表示要返回的頁(yè)面數(shù)。
若 delta 的取值大于現(xiàn)有可返回頁(yè)面數(shù)時(shí),則返回到用戶進(jìn)入小程序的第一個(gè)頁(yè)面。
當(dāng)不填寫 delta 的值時(shí),就默認(rèn)其為 1(注意,默認(rèn)并非取 0),即返回上一頁(yè)面。
7. 小程序頁(yè)面路由傳參方法?
通過(guò)路徑傳遞參數(shù):wx.navigateTo()、wx.redirectTo()和標(biāo)簽<navigator/>等
參數(shù)與路徑之間使用?分隔,參數(shù)鍵與參數(shù)值用=相連,不同參數(shù)用&分隔
例:test?id=1 中id為參數(shù)鍵,1 為參數(shù)值
在目的頁(yè)面中onLoad()方法中option對(duì)象即為參數(shù)對(duì)象,可以通過(guò)參數(shù)鍵來(lái)取出參數(shù)值
8. 請(qǐng)說(shuō)明小程序的生命周期以及頁(yè)面生命周期
小程序生命周期
小程序的生命周期函數(shù)是在app.js里面調(diào)用的,App(Object)函數(shù)用來(lái)注冊(cè)一個(gè)小程序。
接受一個(gè) Object 參數(shù),指定其小程序的生命周期回調(diào);一般有onLaunch監(jiān)聽小程序初始化、
>頁(yè)面的生命周期
頁(yè)面生命周期函數(shù)就是當(dāng)你每進(jìn)入/切換到一個(gè)新的頁(yè)面的時(shí)候,就會(huì)調(diào)用的生命周期函數(shù)。
Page(Object) 函數(shù)用來(lái)注冊(cè)一個(gè)頁(yè)面。接受一個(gè)Object類型參數(shù),
其指定頁(yè)面的初始數(shù)據(jù)、生命周期回調(diào)、事件處理函數(shù)等。
9. 小程序如何刷新當(dāng)前頁(yè)面?
方法一:this.onLoad()
方法二:this.onReady() 或者 this.onShow()
方法三:定義標(biāo)志
在app.js中,定義一個(gè)全局變量Flag,默認(rèn)值為false,
進(jìn)入其它頁(yè)面的時(shí)候?qū)⑺脼閠rue,在頁(yè)面的onShow方法里加一個(gè)判斷,如果Flag為true的話,
先將它的值設(shè)置為false,再調(diào)用接口獲取數(shù)據(jù)。
10. 小程序中獲取openid的方法?
第一步,獲取code
第二步,根據(jù)code獲取openid和session_key
第三步,檢測(cè)用戶登錄狀態(tài)是否有效
具體內(nèi)容見:“https://blog.csdn.net/llayjun/article/details/78291641”
11. 小程序中獲取用戶的手機(jī)號(hào)需要請(qǐng)求哪些aip?并且解密的參數(shù)有哪些?
12. 在小程序中設(shè)置背景圖片在開發(fā)者工具中可以顯示背景圖片,但是在手機(jī)上背景圖片不顯示,怎么解決?
圖片轉(zhuǎn)成Base64格式
在線轉(zhuǎn)換:https://www.sojson.com/image2base64.html
13. 小程序中頁(yè)面跳轉(zhuǎn)傳參的方式有哪些?
微信小程序?qū)Ш接袃煞N形式:一種是在寫在js中進(jìn)行跳轉(zhuǎn),
另一種是寫在wxml頁(yè)面中進(jìn)行跳轉(zhuǎn)。
14. webview頁(yè)面的使用有哪些要求
15. bindtap和catchtap的區(qū)別?
bindtap會(huì)一直觸發(fā)上邊的點(diǎn)擊事件,不會(huì)阻止冒泡事件
catchtap只會(huì)執(zhí)行自己的事件,直接阻止冒泡事件。
16. wx:if 和v-show 的區(qū)別?
17. 如何實(shí)現(xiàn)下拉刷新?
wx.startPullDownRefresh()
開始下拉刷新。調(diào)用后觸發(fā)下拉刷新動(dòng)畫,效果與用戶手動(dòng)下拉刷新一致。
18. 請(qǐng)寫出小程序的完整開發(fā)流程
(1)申請(qǐng)小程序賬號(hào)
(2)申請(qǐng)服務(wù)器域名
(3)下載并安裝開發(fā)工具(登錄注冊(cè)的賬號(hào))
(4)小程序框架配置并開發(fā)
(5)window服務(wù)器IIS配置和搭建打包文件上傳服務(wù)器
相關(guān)案例查看更多
相關(guān)閱讀
- 云南科技公司
- 海報(bào)插件
- 小程序被攻擊
- 云南網(wǎng)站建設(shè)外包
- 網(wǎng)絡(luò)公司報(bào)價(jià)
- 網(wǎng)站沒(méi)排名
- 網(wǎng)站建設(shè)快速優(yōu)化
- 網(wǎng)站小程序
- 昆明小程序哪家好
- 搜索排名
- 報(bào)廢車回收
- 保險(xiǎn)網(wǎng)站建設(shè)公司
- 云南網(wǎng)站開發(fā)
- 人口普查小程序
- 網(wǎng)站建設(shè)開發(fā)
- 網(wǎng)站建設(shè)靠譜公司
- 定制小程序開發(fā)
- 昆明小程序代建
- 云南網(wǎng)站建設(shè)電話
- 昆明做網(wǎng)站
- web教程
- 小程序開發(fā)平臺(tái)前十名
- 云南網(wǎng)站設(shè)計(jì)
- 支付寶小程序被騙
- 網(wǎng)站建設(shè)首選
- 云南做軟件
- 大理小程序開發(fā)
- 網(wǎng)站建設(shè)列表網(wǎng)
- 前端技術(shù)
- 網(wǎng)絡(luò)公司排名