日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)UNI-APP教程:使用Vue.js的注意事項

uni-app 在發(fā)布到H5時支持所有vue的語法;發(fā)布到App和小程序時,由于平臺限制,無法實現(xiàn)全部vue語法,但uni-app仍是是對vue語法支持度最高的跨端框架。本文將詳細講解差異。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站建設(shè)、溫縣網(wǎng)絡(luò)推廣、微信小程序開發(fā)、溫縣網(wǎng)絡(luò)營銷、溫縣企業(yè)策劃、溫縣品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供溫縣建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com

相比Web平臺, Vue.js 在 uni-app 中使用差異主要集中在兩個方面:

  • 新增:uni-app除了支持Vue實例的生命周期,還支持應(yīng)用啟動、頁面顯示等生命周期
  • 受限:相比web平臺,在小程序和App端部分功能受限,具體見下。
  • v3版本App端可以使用更多的vue特性,詳見

生命周期

uni-app 完整支持 Vue 實例的生命周期,同時還新增 應(yīng)用生命周期 及 頁面生命周期。

詳見官方文檔:生命周期鉤子。

模板語法

uni-app 完整支持 Vue 模板語法。

詳見Vue官方文檔:模板語法。

注意 如果使用老版的非自定義組件模式,即manifest中"usingComponents":false,部分模版語法不支持,但此模式已于2019年11月起下線。

data 屬性

data 必須聲明為返回一個初始數(shù)據(jù)對象的函數(shù);否則頁面關(guān)閉時,數(shù)據(jù)不會自動銷毀,再次打開該頁面時,會顯示上次數(shù)據(jù)。

//正確用法,使用函數(shù)返回對象
data() {
    return {
        title: 'Hello'
    }
}

//錯誤寫法,會導(dǎo)致再次打開頁面時,顯示上次數(shù)據(jù)
data: {
    title: 'Hello'
}

全局變量

實現(xiàn)全局變量的方式需要遵循 Vue 單文件模式的開發(fā)規(guī)范。詳細參考:uni-app全局變量的幾種實現(xiàn)方式

Class 與 Style 綁定

為節(jié)約性能,我們將 Class 與 Style 的表達式通過 compiler 硬編碼到 uni-app 中,支持語法和轉(zhuǎn)換效果如下:

class 支持的語法:

111
222
333
444
555

style 支持的語法:

666
777

非H5端不支持 Vue官方文檔:Class 與 Style 綁定 中的 classObject 和 styleObject 語法。

不支持示例:



注意:以:style=""這樣的方式設(shè)置px像素值,其值為實際像素,不會被編譯器轉(zhuǎn)換。

此外還可以用 computed 方法生成 class 或者 style 字符串,插入到頁面中,舉例說明:


用在組件上

非H5端暫不支持在自定義組件上使用 Class 與 Style 綁定

計算屬性

完整支持 Vue官方文檔:計算屬性。

條件渲染

完整支持 Vue官方文檔:條件渲染

列表渲染

完整vue列表渲染 Vue官方文檔:列表渲染

key

如果列表中項目的位置會動態(tài)改變或者有新的項目添加到列表中,并且希望列表中的項目保持自己的特征和狀態(tài)(如  中的輸入內(nèi)容, 的選中狀態(tài)),需要使用 :key 來指定列表中項目的唯一的標識符。

:key 的值以兩種形式提供

  • 使用 v-for 循環(huán) array 中 item 的某個 property,該 property 的值需要是列表中唯一的字符串或數(shù)字,且不能動態(tài)改變。
  • 使用 v-for 循環(huán)中 item 本身,這時需要 item 本身是一個唯一的字符串或者數(shù)字

當數(shù)據(jù)改變觸發(fā)渲染層重新渲染的時候,會校正帶有 key 的組件,框架會確保他們被重新排序,而不是重新創(chuàng)建,以確保使組件保持自身的狀態(tài),并且提高列表渲染時的效率。

如不提供 :key,會報一個 warning, 如果明確知道該列表是靜態(tài),或者不必關(guān)注其順序,可以選擇忽略。

示例:


注意事項

  • 在H5平臺 使用 v-for 循環(huán)整數(shù)時和其他平臺存在差異,如 v-for="(item, index) in 10" 中,在H5平臺 item 從 1 開始,其他平臺 item 從 0 開始,可使用第二個參數(shù) index 來保持一致。
  • 在非H5平臺 循環(huán)對象時不支持第三個參數(shù),如 v-for="(value, name, index) in object" 中,index 參數(shù)是不支持的。

事件處理器

幾乎全支持 Vue官方文檔:事件處理器

// 事件映射表,左側(cè)為 WEB 事件,右側(cè)為 ``uni-app`` 對應(yīng)事件
{
    click: 'tap',
    touchstart: 'touchstart',
    touchmove: 'touchmove',
    touchcancel: 'touchcancel',
    touchend: 'touchend',
    tap: 'tap',
    longtap: 'longtap', //推薦使用longpress代替
    input: 'input',
    change: 'change',
    submit: 'submit',
    blur: 'blur',
    focus: 'focus',
    reset: 'reset',
    confirm: 'confirm',
    columnchange: 'columnchange',
    linechange: 'linechange',
    error: 'error',
    scrolltoupper: 'scrolltoupper',
    scrolltolower: 'scrolltolower',
    scroll: 'scroll'
}

注意:

  • 為兼容各端,事件需使用 v-on 或 @ 的方式綁定,請勿使用小程序端的bind 和 catch 進行事件綁定。
  • 事件修飾符.stop:各平臺均支持, 使用時會阻止事件冒泡,在非 H5 端同時也會阻止事件的默認行為.prevent 僅在 H5 平臺支持.self:僅在 H5 平臺支持.once:僅在 H5 平臺支持.capture:僅在 H5 平臺支持.passive:僅在 H5 平臺支持
  • 若需要禁止蒙版下的頁面滾動,可使用 @touchmove.stop.prevent="moveHandle",moveHandle 可以用來處理 touchmove 的事件,也可以是一個空函數(shù)。
  • 按鍵修飾符:uni-app運行在手機端,沒有鍵盤事件,所以不支持按鍵修飾符。

表單控件綁定

支持 Vue官方文檔:表單控件綁定。

建議開發(fā)過程中直接使用 uni-app:表單組件。用法示例:

H5 的select 標簽用 picker 組件進行代替



表單元素 radio 用 radio-group 組件進行代替



v-html指令

App端(vue頁面V3編譯模式)和H5端支持v-html,其他端不支持v-html。

跨端的富文本處理方案詳見:https://ask.dcloud.net.cn/article/35772


分享文章:創(chuàng)新互聯(lián)UNI-APP教程:使用Vue.js的注意事項
文章轉(zhuǎn)載:http://www.dlmjj.cn/article/djehgie.html