小程序面試題

如今面試,都會問,你會不會小程序呀,你作沒作太小程序呀,其實小程序很簡單,只要嚴格按照小程序的官網來開發就行,一些經常使用api呀,組件呀,小程序都幫你作好了,你只須要負責用就好了。今天咱們來講一下小程序面試中可能遇到的問題。html

1、簡述一下小程序的文件類型

咱們能夠看到在項目的根目錄有一個 app.json、app.js 和 project.config.json 咱們依次來講明一下它們的用途。
面試

首先咱們看一下小程序的目錄結構,下面是小程序目錄結構的截圖;json


一、小程序配置 app.json

必需要有這個文件,若是沒有這個文件,項目沒法運行,由於微信小程序把這個做爲配置文件入口,是當前小程序的全局配置,包括了小程序的全部頁面路徑、界面表現、網絡超時時間、底部 tab 等。
小程序

二、全局app.js

必需要有這個文件,沒有也會報錯!這個文件建立一下就行,能夠什麼都不寫,之後咱們能夠在這個文件中監聽並處理小程序的生命週期函數、聲明全局變量。
微信小程序

三、工具配置 project.config.json

小程序工具的個性化配置,例如界面顏色、編譯配置等等。api

四、pages裏面的文件,分爲四種類型,下面來簡單介紹一下這四程類型

WXML模板:和HTML很是像,WXML由標籤屬性等構成,可是和HTML也有不少不同的地方,例如:bash

  • 標籤名字不同,寫 HTML 的時候,常常會用到的標籤是 div, p, span,而小程序的 WXML 用的標籤是 view, button, text 等等
  • 多了一些 wx:if 這樣的屬性以及 {{ }} 這樣的表達式

WXSS 樣式:WXSS 具備 CSS 大部分的特性,小程序在 WXSS 也作了一些擴充和修改。微信

  • 新增了尺寸單位rpx。1rpx=0.5px=1物理像素
  • 提供了全局的樣式和局部樣式。你能夠寫一個 app.wxss 做爲全局樣式,會做用於當前小程序的全部頁面,局部頁面樣式 page.wxss 僅對當前頁面生效。
  • 此外 WXSS 僅支持部分 CSS 選擇器

JS 交互邏輯:一個服務僅僅只有界面展現是不夠的,還須要和用戶作交互:響應用戶的點擊、獲取用戶的位置等等。在小程序裏邊,咱們就經過編寫 JS腳本文件來處理用戶的操做。網絡

頁面配置page.json:獨立定義每一個頁面的一些屬性,例如頂部顏色、是否容許下拉刷新等等。app

2、小程序的事件

一、事件分類

  1. 冒泡事件:當一個組件上的事件被觸發後,該事件會向父節點傳遞。
  2. 非冒泡事件:當一個組件上的事件被觸發後,該事件不會向父節點傳遞。

二、事件的綁定

事件綁定的寫法同組件的屬性,以 key、value 的形式。

  • key 以bindcatch開頭,而後跟上事件的類型,如bindtapcatchtouchstart
  • value 是一個字符串,須要在對應的 Page 中定義同名的函數。否則當觸發事件的時候會報錯。
bind事件綁定不會阻止冒泡事件向上冒泡,catch事件綁定能夠阻止冒泡事件向上冒泡。

三、如何實現下拉刷新

監聽用戶下拉刷新事件。

  • 須要在app.jsonwindow選項中或頁面配置中開啓enablePullDownRefresh
  • 能夠經過wx.startPullDownRefresh觸發下拉刷新,調用後觸發下拉刷新動畫,效果與用戶手動下拉刷新一致。
  • 當處理完數據刷新後,wx.stopPullDownRefresh能夠中止當前頁面的下拉刷新。

3、小程序更新頁面的值

函數用於將數據從邏輯層發送到視圖層(異步)

this.setData(Object data, Function callback)複製代碼

參數說明:

data:傳一個object,是此次要改變的數據

callback:傳一個function,是setData引發的界面更新渲染完畢後的回調函數

4、小程序的路由方式

打開新頁面:調用 API wx.navigateTo 或使用組件 < navigator open-type="navigateTo"/>

頁面重定向:調用 API wx.redirectTo 或使用組件 <navigator open-type="redirectTo"/>

頁面返回:調用 API wx.navigateBack 或使用組件<navigator open-type="navigateBack">或用戶按左上角返回按鈕

Tab 切換:調用 API wx.switchTab 或使用組件 <navigator open-type="switchTab"/> 或用戶切換 Tab

重啓動:調用 API wx.reLaunch 或使用組件 <navigator open-type="reLaunch"/>

5、經常使用的小程序請求接口的方式

 HTTPS 請求(wx.request)、上傳文件(wx.uploadFile)、下載文件(wx.downloadFile) 和 WebSocket 通訊(wx.connectSocket

相關文章
相關標籤/搜索