本篇文章給大家帶來了關于微信小程序的相關知識,其中主要介紹了一些常見的面試題,包括了怎么在小程序中獲取用戶信息、小程序中怎么實現父子組件傳參,下面一起來看一下,希望對大家有幫助。
【相關學習推薦:小程序學習教程】
1.在小程序中如何獲取用戶信息?
(1)小程序為升級前:可使用wx.getUserInfo直接獲取用戶信息,目前逐漸不能使用該方法了
(2.)升級后,可使用以下方法獲取用戶的賬戶信息:
(1)使用button,設置其屬性:open-type="getUserInfo" <button open-type="getUserInfo">獲取用戶信息</button>
2.小程序中如何實現分享功能,微信有什么限制?
發送給朋友:onShareAppMessage(Object object);
分享到朋友圈: onShareTimeline();
限制:
“單頁模式”下,一些組件或接口存在一定限制:
1、頁面無登錄態,與登錄相關的接口,入wx.login()均不可用;
2、不允許跳轉其他頁面,包括跳轉小程序頁面,跳轉其他小程序,跳轉微信原生頁面;
3、不允許橫屏,頁面包含的tabbar不會渲染,包括自定的tabbar;
4、 本地儲存與小程序普通模式不共用;
3.你的小程序是如何上線的,審核大概需要多久?
(1)在微信web開發者工具里找到項目,并且設置好服務器的域名,如果你的小程序沒有用到外網請求,可以不用配置服務器。配置好服務器,先預覽一下,看看有沒有問題,如果沒有問題的話,點擊上傳。
(2)上傳代碼之后,在微信公眾號平臺登錄微信小程序后臺,點擊開發管理,就可以看到剛剛上傳的代碼,點擊提交審核,就可以了。接下來就是等待微信官方的審核。
(3)一般都是1~3天左右
4.小程序中如何用像Vant一樣的第三方組件?
(1)打開cmd,進入你的項目中,在cmd中執行:npm init,初始化項目
(2)然后安裝Vant
(3)打開小程序客戶端,選擇【工具】菜單 -> 選擇【構建 npm】命令
5.小程序如何實現父子組件傳參?
1、父組件給子組件傳值
在子組件中定義屬性
properties: { // 復雜定義 name:{ type: String, value:'張三豐' }, // 簡單定義 name2:String},
父組件在引用子組件的時候通過設置屬性的方式給子組件傳值
2、 子組件給父組件傳值
在組件中綁定一個自定義事件
// 引用了自定義的組件, 綁定了myevent事件,這個事件對應的是parentEvent方法 <test-button name="張無忌" bindmyevent="parentEvent"></test-button>
在子組件中觸發這個事件,可以給父組件傳值。
子組件中通過triggerEvent觸發事件
methods: { 方法名字: function(){ var myEventDetail = {} // detail對象,提供給事件監聽函數 var myEventOption = {} // 觸發事件的選項 this.triggerEvent('myevent', myEventDetail, myEventOption) } }
6.小程序中APP的生命周期有哪些?
onLaunch(options)
小程序被加載完畢的時候調用。這個方法一般用來做一些初始化的事情。比如獲取用戶 信息、獲取歷史緩存信息、獲取小程序打開來源等。
onShow(options)
小程序啟動,或從后臺進入前臺顯示時調用。如果想要在小程序每次進入到前臺的時候 都執行一些事情,那么可以把代碼放在這個里面。比如一些實時動態更改的數據,用戶每次進來都要從服務器更新,那么我們就可以在這個里面做。
onHide()
小程序被切換到后臺(包括微信自身被切換到后臺或者小程序暫時被切換到后臺時)??梢栽谶@個方法中做一些數據的保存。
onError(String error)
小程序發生腳本錯誤,或者 api 調用失敗時觸發。在小程序發生錯誤的時候,會把錯誤 信息發送到這個函數中,所以可以在這個函數中做一些錯誤收集。
onPageNotFound(Object)
小程序要打開的頁面不存在時觸發。一般在代碼更新的時候,有些頁面被刪除了,但是 其他地方沒有改過來的情況下會發生這種情況,或者一些活動頁面,活動結束后被關掉了。也可以 在這個里面做一些錯誤的收集和頁面的重新跳轉。
getApp()
獲取當前的 app 對象。一般在app.js外的地方調用。在app.js內部可以使用this獲得當前的大對象;在外面要用定義在app.js的全局數據時,要用getApp()。
7.小程序中Page的生命周期有哪些?
onLoad()、onReady()、onShow()、onHide()、onUnload()五個頁面生命周期函數,其分別是頁面加載、就緒、渲染、隱藏、卸載時被調用。
8.小程序如何定義事件?
在小程序中綁定事件可以以bind開頭然后跟上事件的類型,如bindtap綁定一個點擊事件,對應的值是一個字符串,需要在page構造器中定義同名函數,每次觸發事件之后就會執行對應函數的內容。
9.如何阻止小程序的事件冒泡?
在小程序中除了通過bind之外,還可以通過catch進行事件綁定,通過catch綁定的事件不會觸發事件冒泡。
10.如何讓事件在捕獲階段觸發?
事件的觸發分為兩個階段,首先是捕獲階段,其次是冒泡階段。默認情況下事件都是在冒泡階段觸發。如果希望事件可以在捕獲階段觸發,可以通過capture-bind進行事件綁定。
【相關學習推薦:小程序學習教程】