欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mpvue構建小程序的方法(步驟+地址)

 更新時間:2018年05月22日 14:20:58   作者:給你添麻煩了  
mpvue是一個使用Vue.js開發(fā)小程序的前端框架??蚣芑?Vue.js 核心,這篇文章主要介紹了mpvue構建小程序的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

mpvue是一個使用Vue.js開發(fā)小程序的前端框架(美團的開源項目)??蚣芑?code>Vue.js核心,mpvue修改了Vue.js的 runtime 和 compiler 實現(xiàn),使其可以運行在小程序環(huán)境中,從而為小程序開發(fā)引入了整套Vue.js開發(fā)體驗。

mpvue你可以使用你熟悉的vue框架語法,雙向綁定讓你不用再使用wx的this.setData了,你可以使用npm方便的引入第三方了,真的是貧窮限制了我的想象力啊。個人感覺mpvue比wepy更加簡單,上手更加方便,mpuve五分鐘教程快速構建。

項目git地址:mpvue-demo(代碼注釋很全,使用mpvue很簡單構建一個小程序,拓展)

step1: 查看文檔快速構建simple mpvue project

# 全局安裝 vue-cli
$ npm install --global vue-cli

# 創(chuàng)建一個基于 mpvue-quickstart 模板的新項目
$ vue init mpvue/mpvue-quickstart my-project

# 安裝依賴
$ cd my-project
$ npm install
# 啟動構建
$ npm run dev

這里我取消了vuex(狀態(tài)管理)和ESlint(代碼檢查),因為個人不喜歡檢測空格和;的規(guī)范,你可以根據(jù)你的需求配置。

step2:修改代碼,微信開發(fā)者工具打開dist目錄,查看是否發(fā)生改變。

step3:封裝api和http請求(這里使用的是flyio,除了請求取消,其他功能基本相似axios,大小只有4kb,是axios的三分之一)

package.json加入依賴或者npm install flyio

var Fly=require("../lib/wx") //wx.js為您下載的源碼文件
// var Fly=require("flyio/dist/npm/wx") //npm引入方式
var fly=new Fly(); //創(chuàng)建fly實例

//添加攔截器
fly.interceptors.request.use((config,promise)=>{
  //給所有請求添加自定義header
  config.headers["X-Tag"]="flyio";
  return config;
})
//配置請求基地址
fly.config.baseURL="https://wendux.github.io/"
...

Page({
 //事件處理函數(shù)
 bindViewTap: function() {
  //調(diào)用
  fly.get("http://10.10.180.81/doris/1/1.0.0/user/login",{xx:6}).then((d)=>{
   //輸出請求數(shù)據(jù)
   console.log(d.data)
   //輸出響應頭
   console.log(d.header)
  }).catch(err=>{
   console.log(err.status,err.message)
  })
  ...
 })
})

step4: 將flyio封裝的請求和項目api作為組件庫掛載在原型對象上,這樣不用每個vue單頁面都import 封裝的js,直接使用this.$http調(diào)用方法。(flyio官方文檔)

httpUtil.js

var Fly=require("../lib/wx") //wx.js為您下載的源碼文件
// var Fly=require("flyio/dist/npm/wx") //npm引入方式
var fly=new Fly(); //創(chuàng)建fly實例

//添加攔截器
fly.interceptors.request.use((config,promise)=>{
  //給所有請求添加自定義header
  config.headers["X-Tag"]="flyio";
  return config;
})
//配置請求基地址
fly.config.baseURL="https://wendux.github.io/"
...

Page({
 //事件處理函數(shù)
 bindViewTap: function() {
  //調(diào)用
  fly.get("http://10.10.180.81/doris/1/1.0.0/user/login",{xx:6}).then((d)=>{
   //輸出請求數(shù)據(jù)
   console.log(d.data)
   //輸出響應頭
   console.log(d.header)
  }).catch(err=>{
   console.log(err.status,err.message)
  })
  ...
 })
})

apiUtil.js

/**
 * Created by yuchen on 2018/4/2.
 */
//封裝httpApi
import request from './httpUtil'
const host = "https://XXX.cn"
const api = {
 // test地址
 authorList:() => request.get(`${host}/index/list_author_recommend.html`)
}

// export default api
export default { //作為組件庫(install)
 install: function(Vue,name="$http") {//自定義名字(vue-resource也使用$http)
  Object.defineProperty(Vue.prototype, name, { value: api });//將組件庫掛載在原型對象上
 }
}

step5:vue組件(mpvue官方項目中就創(chuàng)建了card組件,這里注意class需要寫在組件內(nèi)部里面,不然渲染不出來)

step6:頁面跳轉(zhuǎn)和傳參(這里mpvue不支持vue-router)

使用微信的頁面跳轉(zhuǎn)方法,然后跳轉(zhuǎn)頁面使用this.$root.$mp.query獲取參數(shù)。

step7:引入weui,測試效果(根據(jù)你的需求引入UI庫,不支持elementUI,或者不使用)。

下載weui.css放入項目中,import引入css,如:import '../static/weui/weui.css'

補充下使用mpvue需要注意的地方(具體參考官方文檔)

1.新增頁面需要npm run dev重啟一下。

2.小程序里所有的 BOM/DOM 都不能用,也就是說v-html指令不能用。

3.暫不支持在組件上使用 Class 與 Style 綁定,需要在組件內(nèi)部書寫。

4.mpvue 可以支持小程序的原生組件,比如:picker,map等,需要注意的是原生組件上的事件綁定,需要以vue的事件綁定語法來綁定,如bindchange="eventName"事件,需要寫成@change="eventName"。

5.mpvue建議使用v-model.lazy綁定方式以優(yōu)化性能,此外v-model在老基礎庫下輸入框輸入時可能存在光標重設的問題。

6.寫頁面跳轉(zhuǎn)時候傳入動態(tài)參數(shù),需要寫成:url,如:<navigator url="'../test/main?id='+id hover-class="none""。

7.通過this.$root.$mp.query進行獲取小程序在 page onLoad 時候傳遞的 options。通過this.$root.$mp.appOptions進行獲取小程序在 app onLaunch/onShow 時候傳遞的 options。

8.使用this.$root.$mp.query獲取參數(shù)需要在monted中獲取,在created中會報Cannot read property 'query' of undefined 。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • React/vue開發(fā)報錯TypeError:this.getOptions?is?not?a?function的解決

    React/vue開發(fā)報錯TypeError:this.getOptions?is?not?a?function

    這篇文章主要給大家介紹了關于React/vue開發(fā)報錯TypeError:this.getOptions?is?not?a?function的解決方法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • 基于axios請求封裝的vue應用實例代碼

    基于axios請求封裝的vue應用實例代碼

    這篇文章主要給大家介紹了基于axios請求封裝的vue應用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • 在antd中setFieldsValue和defaultVal的用法

    在antd中setFieldsValue和defaultVal的用法

    這篇文章主要介紹了在antd中setFieldsValue和defaultVal的用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • vue如何使用moment處理時間戳轉(zhuǎn)換成日期或時間格式

    vue如何使用moment處理時間戳轉(zhuǎn)換成日期或時間格式

    這篇文章主要給大家介紹了關于vue如何使用moment處理時間戳轉(zhuǎn)換成日期或時間格式的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者vue具有一定的參考學習價值,需要的朋友可以參考下
    2022-03-03
  • Vue3文件下載方法實現(xiàn)的簡單代碼

    Vue3文件下載方法實現(xiàn)的簡單代碼

    在Web開發(fā)中,文件下載可通過多種方式實現(xiàn),下面這篇文章主要介紹了Vue3文件下載方法實現(xiàn)的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-10-10
  • vue如何封裝選擇文件組件和選擇文件api

    vue如何封裝選擇文件組件和選擇文件api

    這篇文章主要介紹了vue如何封裝選擇文件組件和選擇文件api問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • vue3引入ElementUI報錯問題及解決

    vue3引入ElementUI報錯問題及解決

    這篇文章主要介紹了vue3引入ElementUI報錯問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Vue3 Ref獲取真實DOM學習實戰(zhàn)

    Vue3 Ref獲取真實DOM學習實戰(zhàn)

    這篇文章主要為大家介紹了Vue3 Ref獲取真實DOM學習實戰(zhàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • Vue3中實現(xiàn)發(fā)送網(wǎng)絡請求功能(最新推薦)

    Vue3中實現(xiàn)發(fā)送網(wǎng)絡請求功能(最新推薦)

    Axios是一個基于Promise的HTTP客戶端,可以在瀏覽器和Node.js中用于發(fā)送HTTP請求,本文主要介紹在Vue3中實現(xiàn)發(fā)送網(wǎng)絡請求功能,感興趣的朋友一起看看吧
    2023-12-12
  • 前端報錯npm ERR! cb() never called!問題解決辦法

    前端報錯npm ERR! cb() never called!問題解決辦法

    最近接手了一個前臺項目,執(zhí)行npm install的時候一直報錯,所以這里就給大家總結下,這篇文章主要給給大家介紹了關于前端報錯npm?ERR! cb() never called!問題的解決辦法,需要的朋友可以參考下
    2024-05-05

最新評論