mpvue注意事項(xiàng)整理

命名格式

組件名不要和微信的組件名重名

(網(wǎng)上整理來(lái)的各個(gè)小點(diǎn),方便自己查看)

微信自帶組件

  • view
  • scroll-view
  • swiper
  • movable-view
  • cover-view
  • icon
  • text
  • rich-text
  • progress
  • button
  • checkbox
  • form
  • input
  • label
  • picker
  • picker-view
  • radio
  • slider
  • switch
  • textarea
  • navigator
  • audio
  • image
  • video
  • camera
  • live-player
  • live-pusher
  • map
  • open-data
  • web-view
  • ad

mpvue不支持的組件名
以下為保留關(guān)鍵字刽宪,暫不支持作為組件名:

  • a
  • canvas
  • cell
  • content
  • countdown
  • datepicker
  • div
  • element
  • embed
  • header
  • image
  • img
  • indicator
  • input
  • link
  • list
  • loading-indicator
  • loading
  • marquee
  • meta
  • refresh
  • richtext
  • script
  • scrollable
  • scroller
  • select
  • slider-neighbor
  • slider
  • slot
  • span
  • spinner
  • style
  • svg
  • switch
  • tabbar
  • tabheader
  • template
  • text
  • textarea
  • timepicker
  • trisition-group
  • trisition
  • video
  • view
  • web

mpvue部分

img標(biāo)簽

mpvue中模板中的img標(biāo)簽url指向相對(duì)路徑時(shí)不能正確解析
img標(biāo)簽用絕對(duì)路徑引入
css中可以通過(guò)相對(duì)路徑引入圖片

mpvue寫(xiě)法注意

  • import { LTabbar, LTabbarItem } from '@/components/tabbar' (不行)
    只支持單文件引用
    import LTabbar from '@/components/tabbar'
    import LTabbarItem from '@/components/tabbar-item'

  • v-for
    v-for里邊必須加:key

  • 所有頁(yè)面里面的created生命周期函數(shù) 都會(huì)在小程序加載的時(shí)候空郊,
    一次性執(zhí)行梭纹,而不是每進(jìn)入一個(gè)頁(yè)面執(zhí)行一次
    解決方法,用小程序的 onload()/ vue 的 mounted()

  • 組件第一次加載的時(shí)候不能執(zhí)行onShow里面的內(nèi)容,只有在隱藏又顯示后邮旷,才會(huì)顯示孤里,而頁(yè)面卻每次進(jìn)入都會(huì)顯示
    例如我們?cè)谝粋€(gè)組件里有一下代碼
onLoad () {
  console.log('onLoad')
},
onShow () {
  console.log('onShow')
},
mounted () {
  console.log('mounted')
},
然后實(shí)際上伏伯,只打印出

onLoad
mounted
  • 全局變量
    遇到很多需要全局變量,特別是狀態(tài)的捌袜,最好統(tǒng)一管理说搅。vue 的 vuex 是專(zhuān)為 Vue.js 應(yīng)用程序開(kāi)發(fā)的狀態(tài)管理模式。使用過(guò)程遇到的坑是無(wú)法使用它的輔助函數(shù) mapState虏等、mapGetters弄唧、mapActions、mapMutations 等博其√撞牛看下 mpvue 的 issue 感覺(jué)是 mpvue 的問(wèn)題。 解決方案: 用最原始的 store.commit()慕淡、store.getter
    +1. 對(duì)于一在小程序組件中為 Handler或者為EventHandle 的屬性背伴,在 mpvue 框架中要寫(xiě)成 vue 的事件綁定形式,就像:bindchange寫(xiě)成@change

  • 對(duì)于一些在小程序中綁定值的屬性,組件中的 value峰髓,在 mpvue 框架中要寫(xiě)成 :value="date"

  • 觸發(fā)事件取值問(wèn)題
    小程序:event.detail = {value: value}
    在 mpvue中要這樣寫(xiě):event.mp.detail = {value: value}

  • 對(duì)于一些回調(diào)函數(shù)傻寂,比如getuserinfo,在原生小程序中,獲取信息為:e.detail,但在mpvue中携兵,獲取方式為:e.mp.detail疾掰。

  • bindgetuserinfo 要寫(xiě)成 @getuserinfo,bindcontact 要寫(xiě)成 @contact徐紧,bindgetphonenumber 要寫(xiě)成 @getphonenumber静檬,binderrror 要寫(xiě)成 @errror。

  • 文件夾首字母不能大寫(xiě)

  • 兩層v-for不能用index的名字來(lái)作為索引并级,index改個(gè)名字就好

mpvue不支持

  • 不支持Vue-router

  • 不支持 純-HTML
    小程序里所有的 BOM/DOM 都不能用拂檩,也就是說(shuō) v-html 指令不能用。

  • 不支持部分復(fù)雜的 JavaScript 渲染表達(dá)式
    我們會(huì)把 template 中的 {{}} 雙花括號(hào)的部分嘲碧,直接編碼到 wxml 文件中稻励,由于微信小程序的能力限制(數(shù)據(jù)綁定),所以無(wú)法支持復(fù)雜的 JavaScript 表達(dá)式愈涩。目前可以使用的有 + - * % ?: ! == === > < [] .望抽,

  • 不支持過(guò)濾器
    渲染部分會(huì)轉(zhuǎn)成 wxml 加矛,wxml 不支持過(guò)濾器,所以這部分功能不支持煤篙。

  • 不支持函數(shù)
    不支持在 template 內(nèi)使用 methods 中的函數(shù)斟览。

  • 動(dòng)態(tài)組件,自定義 render舰蟆,和<script type=“text/x-template”> 字符串模版等都不支持

  • 暫不支持在組件引用時(shí)趣惠,在組件上定義 click 等原生事件、v-show(可用 v-if 代替)和 class style 等樣式屬性(例:<card class=“class-name”> </card> 樣式是不會(huì)生效的)身害,因?yàn)榫幾g到wxml味悄,小程序不會(huì)生成節(jié)點(diǎn),建議寫(xiě)在內(nèi)部頂級(jí)元素上塌鸯。

  • Slot(scoped 暫時(shí)還沒(méi)做支持)

  • 動(dòng)態(tài)組件

  • 異步組件

  • inline-template

  • X-Templates

  • keep-alive

  • transition

  • class

  • style

  • http://mpvue.com/mpvue/#_6 建議把官方給的這個(gè)文檔可以看下

小程序部分

  • 在 input 和 textarea 中 change 事件會(huì)被轉(zhuǎn)為 blur 事件
 <map @regionchange="functionName" @end="functionName" @begin="functionName"><map>

小程序能力所致侍瑟,bind 和 catch 事件同時(shí)綁定時(shí)候,只會(huì)觸發(fā) bind ,catch 不會(huì)被觸發(fā)丙猬,要避免踩坑

  • 如何獲取小程序在 page onLoad 時(shí)候傳遞的 options
    在所有 頁(yè)面 的組件內(nèi)可以通過(guò) this.root.mp.query 進(jìn)行獲取涨颜。

  • 如何獲取小程序在 app onLaunch/onShow 時(shí)候傳遞的 options
    在所有的組件內(nèi)可以通過(guò) this.root.mp.appOptions 進(jìn)行獲取。

  • 全局的下拉加載需要在配置中設(shè)置開(kāi)啟
    并且需要在方法中調(diào)用wx.stopPullDownRefresh()方法結(jié)束下拉動(dòng)作茧球,不然在真機(jī)上面下拉效果無(wú)法收起

  • 如果使用scroll-view標(biāo)簽實(shí)現(xiàn)庭瑰,有幾個(gè)地方需要說(shuō)明一下:

  • 觸發(fā)方法需要放到methods中,并且綁定在scroll-view標(biāo)簽上調(diào)用
    在scroll-view中下拉的時(shí)候抢埋,無(wú)法觸發(fā)全局的下拉效果弹灭,需要自己實(shí)現(xiàn)相應(yīng)的動(dòng)畫(huà)(所以建議優(yōu)先使用全局的方法)
    下拉刷新只有在滑動(dòng)至頂部的時(shí)候才會(huì)觸發(fā),如果你的滾動(dòng)條已經(jīng)在標(biāo)簽區(qū)域最頂部了揪垄,就無(wú)法觸發(fā)下拉方法(這點(diǎn)是最后放棄scroll-view的主要原因穷吮,處理起來(lái)太麻煩了)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市饥努,隨后出現(xiàn)的幾起案子捡鱼,更是在濱河造成了極大的恐慌,老刑警劉巖酷愧,帶你破解...
    沈念sama閱讀 216,744評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件驾诈,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡溶浴,警方通過(guò)查閱死者的電腦和手機(jī)翘鸭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)戳葵,“玉大人,你說(shuō)我怎么就攤上這事汉匙」八福” “怎么了生蚁?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,105評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)戏自。 經(jīng)常有香客問(wèn)我邦投,道長(zhǎng),這世上最難降的妖魔是什么擅笔? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,242評(píng)論 1 292
  • 正文 為了忘掉前任志衣,我火速辦了婚禮,結(jié)果婚禮上猛们,老公的妹妹穿的比我還像新娘念脯。我一直安慰自己,他們只是感情好弯淘,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,269評(píng)論 6 389
  • 文/花漫 我一把揭開(kāi)白布绿店。 她就那樣靜靜地躺著,像睡著了一般庐橙。 火紅的嫁衣襯著肌膚如雪假勿。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,215評(píng)論 1 299
  • 那天态鳖,我揣著相機(jī)與錄音转培,去河邊找鬼。 笑死浆竭,一個(gè)胖子當(dāng)著我的面吹牛浸须,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播兆蕉,決...
    沈念sama閱讀 40,096評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼羽戒,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了虎韵?” 一聲冷哼從身側(cè)響起易稠,我...
    開(kāi)封第一講書(shū)人閱讀 38,939評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎包蓝,沒(méi)想到半個(gè)月后驶社,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,354評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡测萎,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,573評(píng)論 2 333
  • 正文 我和宋清朗相戀三年亡电,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片硅瞧。...
    茶點(diǎn)故事閱讀 39,745評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡份乒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情或辖,我是刑警寧澤瘾英,帶...
    沈念sama閱讀 35,448評(píng)論 5 344
  • 正文 年R本政府宣布,位于F島的核電站颂暇,受9級(jí)特大地震影響缺谴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜耳鸯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,048評(píng)論 3 327
  • 文/蒙蒙 一湿蛔、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧县爬,春花似錦阳啥、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,683評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至纲缓,卻和暖如春卷拘,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背祝高。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,838評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工栗弟, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人工闺。 一個(gè)月前我還...
    沈念sama閱讀 47,776評(píng)論 2 369
  • 正文 我出身青樓乍赫,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親陆蟆。 傳聞我的和親對(duì)象是個(gè)殘疾皇子雷厂,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,652評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載 :OpenDiggawesome-github-vue 是由OpenDigg整理并維護(hù)的Vue相關(guān)開(kāi)源項(xiàng)目庫(kù)...
    果汁密碼閱讀 23,119評(píng)論 8 124
  • 目錄 UI組件 開(kāi)發(fā)框架 實(shí)用庫(kù) 服務(wù)端 輔助工具 應(yīng)用實(shí)例 Demo示例 UI組件 element★13489 ...
    余生社會(huì)閱讀 19,737評(píng)論 7 233
  • 弱類(lèi)型,都用var聲明叠殷,可以隨時(shí)改變變量所存數(shù)據(jù)的類(lèi)型 邏輯欲火 true || 6; 邏輯或短路改鲫,左邊...
    簡(jiǎn)愛(ài)WindMan閱讀 122評(píng)論 0 1
  • 今天發(fā)現(xiàn)兒子多了一項(xiàng)“騙奶”的本事像棘,哈哈哈,太逗了壶冒。兒子馬上六個(gè)月了缕题,因?yàn)槿氃诩規(guī)殞殻责B(yǎng)成了奶睡的習(xí)慣胖腾,平...
    多想知道閱讀 413評(píng)論 0 1
  • “喜歡是一朝一夕烟零,愛(ài)是從心動(dòng)到古稀”早晨的第一縷陽(yáng)光灑在陽(yáng)臺(tái)窗臺(tái)上瘪松,小盆花在陽(yáng)光下水綠透亮。老爸在廚房里一邊開(kāi)著燉...
    莊海瓊閱讀 197評(píng)論 0 0