亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 課堂 > 小程序 > 正文

微信小程序wepy框架學習和使用心得詳解

2020-03-21 15:55:11
字體:
來源:轉載
供稿:網友

一、微信小程序wepy框架簡介:

微信小程序WePY框架是騰訊官方推出來的框架,類似的框架還有美團的mpvue,京東的Taro等; 目前公司開發小程序主要用到的是微信原生方法和官方的wepy框架; wepy框架在開發過程中參考了 Vue 等現有框架的一些語法風格和功能特性,對原生小程序的開發模式進行了再次封裝,更貼近于 MVVM 架構模式, 并支持ES6/7的一些新特性。相對更容易上手,提高開發效率;

二、WePY項目的創建與目錄結構

WePY的安裝或更新都通過npm進行,全局安裝或更新WePY命令行工具

npm install wepy-cli -g

在開發目錄中生成Demo開發項目

wepy new myproject

切換至項目目錄

cd myproject

安裝依賴

npm install

開啟實時編譯

wepy build --watch

WePY項目的目錄結構如下

 ├── dist          小程序運行代碼目錄(該目錄由WePY的build指令自動編譯生成,請不要直接修改該目錄下的文件) ├── node_modules       ├── src          代碼編寫的目錄(該目錄為使用WePY后的開發目錄) |  ├── components     WePY組件目錄(組件不屬于完整頁面,僅供完整頁面或其他組件引用) |  |  ├── com_a.wpy   可復用的WePY組件a |  |  └── com_b.wpy   可復用的WePY組件b |  ├── pages       WePY頁面目錄(屬于完整頁面) |  |  ├── index.wpy   index頁面(經build后,會在dist目錄下的pages目錄生成index.js、index.json、index.wxml和index.wxss文件) |  |  └── other.wpy   other頁面(經build后,會在dist目錄下的pages目錄生成other.js、other.json、other.wxml和other.wxss文件) |  └── app.wpy      小程序配置項(全局數據、樣式、聲明鉤子等;經build后,會在dist目錄下生成app.js、app.json和app.wxss文件) └ ── package.json      項目的package配置

搭建好項目后,IDE需配置代碼高亮,文件后綴為.wpy,可共用Vue的高亮規則,但需要手動設置,具體配置大家可參考wepy官方文檔

三、wepy使用心得總結:

1.wepy代碼風格類似Vue,如computed,data,methods等用法差不多,熟悉vue開發的同學看看文檔可以輕松上手,不過還是有很多地方寫法容易混淆,我工作中遇到的總結幾個,如列表循環,條件渲染,父子組件值傳遞等,下面舉例說明:

1). wepy和vue列表循環對比:

   // wepy 列表循環,外面可套一層repeat標簽,注意和vue寫法的區別  <repeat for="{{list}}" key="index>    <view>{{item}}</view>  </repeat>    // vue 列表循環,外面可套一層template標簽  <template v-for="(item,index) in list" :key="index"> // 不推薦key直接用索引index    <div>{{item}}<div>  </template>

2). wepy和vue條件渲染中,wepy需要加{{}},vue不需要,里面都可以寫表達式進行判斷:

<view wx:if="{{show}}"></view><div v-if="show"></div>

3). 父子組件值傳遞兩者都在子組件中用props接收, props中可以定義能接收的數據類型,如果不符合會報錯,wepy可以通過使用.sync修飾符來達到父組件數據綁定至子組件的效果,也可以通過設置子組件props的twoWay:true來達到子組件數據綁定至父組件的效果。那如果既使用.sync修飾符,同時子組件props中添加的twoWay: true時,就可以實現數據的雙向綁定了;

// parent.wpy        <child :title="parentTitle" :syncTitle.sync="parentTitle" :twoWayTitle="parentTitle"></child>        data = {      parentTitle: 'p-title'    };            // child.wpy        props = {      // 靜態傳值      title: String,          // 父向子單向動態傳值      syncTitle: {        type: String,        default: 'null'      },          twoWayTitle: {        type: String,        default: 'nothing',        twoWay: true      }    };        onLoad () {      console.log(this.title); // p-title      console.log(this.syncTitle); // p-title      console.log(this.twoWayTitle); // p-title          this.title = 'c-title';      console.log(this.$parent.parentTitle); // p-title.      this.twoWayTitle = 'two-way-title';      this.$apply();      console.log(this.$parent.parentTitle); // two-way-title. --- twoWay為true時,子組件props中的屬性值改變時,會同時改變父組件對應的值      this.$parent.parentTitle = 'p-title-changed';      this.$parent.$apply();      console.log(this.title); // 'c-title';      console.log(this.syncTitle); // 'p-title-changed' --- 有.sync修飾符的props屬性值,當在父組件中改變時,會同時改變子組件對應的值。

2.wepy支持自定義組件開發,實現組件復用,減少代碼冗余,提高開發效率;

3.wepy支持引入npm包,拓展了很多方法;

4.支持Promise,ES2015+特性,如async await 等;

5.支持多種編譯器,Less/Sass/Styus、Babel/Typescript、Pug;

6.支持多種插件處理,文件壓縮,圖片壓縮,內容替換等;

7.支持 Sourcemap,ESLint代碼規范管理等;

8.對小程序wx.request方法參數進行了修改,返回Promise對象,優化了事件參數傳遞,具體用法如下:

// wx.request原生代碼:wx.request({  url: 'xxx',  success: function (data) {    console.log(data);  }});// WePY 使用方式, 需要開啟 Promise 支持,參考開發規范章節wepy.request('xxxx').then((d) => console.log(d));// async/await 的使用方式, 需要開啟 Promise 和 async/await 支持,參考 WIKIasync function request () {  let d = await wepy.request('xxxxx');  console.log(d);// 原生的事件傳參方式:<view data-id="{{index}}" data-title="wepy" data-other="otherparams" bindtap="tapName"> Click me! </view>Page({  tapName: function (event) {    console.log(event.currentTarget.dataset.id)// output: 1    console.log(event.currentTarget.dataset.title)// output: wepy    console.log(event.currentTarget.dataset.other)// output: otherparams  }});// WePY 1.1.8以后的版本,只允許傳string。<view @tap="tapName({{index}}, 'wepy', 'otherparams')"> Click me! </view>methods: {  tapName (id, title, other, event) {    console.log(id, title, other)// output: 1, wepy, otherparams  }}

四 、最后一點點感悟:

本文總結的比較淺顯,很多地方說的也不是太詳細,如有錯誤的地方大家可以批評指正,歡迎大家留言一起交流探討,堅持學習,不斷探索總結,路漫漫其修遠兮,吾將上下而求索!

參考資料:

wepy官方文檔 ;

微信小程序官網開發文檔 ;

 vue官方開發文檔

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
伊人伊成久久人综合网站| 亚洲精品不卡在线| 国产精品网站大全| 美女久久久久久久久久久| 欧美日韩亚洲91| 日韩视频第一页| 欧美日韩免费区域视频在线观看| 国产999视频| 中文字幕日韩精品在线| 日本成人免费在线| 国产不卡在线观看| 成人h视频在线观看播放| 成人黄色免费网站在线观看| 亚洲影院污污.| 91久久精品国产| 欧美丝袜一区二区| 亚洲一二三在线| 国产一区二区色| 久久久久久九九九| 亚洲天堂色网站| 亚洲欧洲第一视频| 在线不卡国产精品| 成人激情视频免费在线| 国产999精品久久久影片官网| 色偷偷噜噜噜亚洲男人的天堂| 欧美成人中文字幕在线| 国产精品视频色| 欧美性理论片在线观看片免费| 久久精品亚洲热| 国产欧美日韩精品专区| 欧美激情小视频| 久久久国产精彩视频美女艺术照福利| 亚洲成人免费在线视频| 少妇av一区二区三区| 日韩视频免费大全中文字幕| 国产一区二区免费| 日本精品视频网站| 国产91亚洲精品| 97热在线精品视频在线观看| 欧美成人精品在线播放| 国产日韩欧美黄色| 日韩电影免费在线观看| 亚洲影视中文字幕| 国产精品久久9| 亚洲国产精品推荐| 欧美久久精品午夜青青大伊人| 国产精品成人观看视频国产奇米| 亚洲精品日韩av| 91日本视频在线| 亚洲男人的天堂在线| 成人国产精品免费视频| 久久久精品网站| 91国语精品自产拍在线观看性色| 91色视频在线观看| 国产网站欧美日韩免费精品在线观看| 欧美老女人性生活| 国产精品中文字幕在线观看| 一本色道久久综合狠狠躁篇的优点| 夜夜嗨av一区二区三区免费区| 国产精品久久久久不卡| 久久高清视频免费| 91在线视频导航| 欧美区二区三区| 国产婷婷成人久久av免费高清| 黄色成人在线免费| 97婷婷大伊香蕉精品视频| 亚洲色图综合网| 亚洲天堂开心观看| 国产精品18久久久久久麻辣| 亚洲视频在线观看视频| 日韩黄色在线免费观看| 日韩av电影在线网| 久久精品99久久久久久久久| 久久九九国产精品怡红院| 欧美日韩亚洲一区二| 美女999久久久精品视频| 中文字幕精品网| 麻豆精品精华液| 久久精品国产免费观看| 久久精品亚洲国产| 久久精品电影网| 色综合亚洲精品激情狠狠| 欧美噜噜久久久xxx| 亚洲视频在线视频| 97精品一区二区视频在线观看| 精品中文字幕在线| 亚洲成人久久网| 欧美激情欧美激情在线五月| 亚洲欧洲xxxx| 亚洲日本中文字幕免费在线不卡| 欧美在线不卡区| 日韩av在线资源| 欧美亚洲在线视频| 秋霞av国产精品一区| 国产精品爱久久久久久久| 国产亚洲欧美日韩一区二区| 亚洲视频免费一区| 欧美大成色www永久网站婷| 亚洲精品欧美一区二区三区| 日韩av免费一区| 欧美激情一区二区三区在线视频观看| 久久黄色av网站| 91黑丝高跟在线| 成人国产精品色哟哟| 91高清视频免费| 午夜精品蜜臀一区二区三区免费| 亚洲аv电影天堂网| 日韩av在线免播放器| 国产午夜精品视频免费不卡69堂| 91精品国产高清久久久久久| 97色伦亚洲国产| 久久久久久伊人| 日韩成人中文电影| 555www成人网| 38少妇精品导航| 亚洲一区二区三区成人在线视频精品| 欧美视频在线视频| 国产国语刺激对白av不卡| 亚洲成人教育av| 欧美肥老妇视频| 国产小视频91| 欧美精品一区三区| 国产精品久久精品| 成人黄色网免费| 韩国三级日本三级少妇99| 日韩av在线免费观看| 欧美国产一区二区三区| 久久久久久久久国产精品| 国产精品视频1区| 97精品欧美一区二区三区| 国产精品免费一区二区三区都可以| wwwwwwww亚洲| 国内成人精品一区| 亚洲国产成人精品久久| 欧美另类老肥妇| 日韩中文字幕网站| 久久偷看各类女兵18女厕嘘嘘| 亚洲三级 欧美三级| 欧美亚洲视频在线看网址| 福利一区福利二区微拍刺激| 日韩美女中文字幕| 国产有码一区二区| 91探花福利精品国产自产在线| 国产日韩中文字幕| 91视频8mav| 欧美大片第1页| 国产精品高潮视频| 日韩电影免费观看在线| 社区色欧美激情 | 亚洲一区二区三区四区在线播放| 国产日产欧美精品| 这里精品视频免费| 欧美激情2020午夜免费观看| 上原亚衣av一区二区三区| 国产一区视频在线| 久久久久久高潮国产精品视| 亚洲精品av在线播放| 精品国内产的精品视频在线观看| 91精品国产自产在线| 国产女同一区二区| 动漫精品一区二区| 日韩精品视频免费专区在线播放| 亚洲成人激情视频| 国产精品久久久久久av|