vue編碼風(fēng)格

項(xiàng)目命名規(guī)則

  • 文件夾 采用烤串形式
  • 文件名 采用烤串形式
  • 常量名稱 采用小駝峰形式
  • 變量名稱 采用小駝峰形式
  • 樣式類名 采用烤串形式

vue 注意事項(xiàng)

  • 組件文件名 采用烤串形式
  • 組件名稱 采用大駝峰
  • 引入組件的變量名稱采用大駝峰
  • 注冊(cè)組件 采用大駝峰命名
  • 組件模板(單文件)、字符串模板中(實(shí)例選項(xiàng)template),采用大駝峰且自閉合,具有插槽作用域的組件則寫閉合標(biāo)簽
  • 由vue編譯器編譯對(duì)模板中,對(duì)自定義標(biāo)簽的編譯時(shí),與注冊(cè)標(biāo)簽的名稱匹配過程是有一個(gè)轉(zhuǎn)義過程的
    轉(zhuǎn)義規(guī)則
  1. case-name 寫法會(huì)轉(zhuǎn)義為三種形式 case-name caseName CaseName 這三種注冊(cè)方式都能夠被匹配到
  2. caseName 寫法會(huì)轉(zhuǎn)義為兩種形式 caseName CaseName 這兩種注冊(cè)方式都能被匹配到
  3. CaseName 寫法不會(huì)轉(zhuǎn)義 注冊(cè)時(shí)必須命名為 CaseName,
  4. html模板中組件名稱采用烤串形式,且需要寫閉合標(biāo)簽, 由于html對(duì)與大小寫不敏感,所以caseName、CaseName 兩種寫法都會(huì)被解析為 casename, 在vue編譯器對(duì)自定義標(biāo)簽進(jìn)行解析時(shí),casename 不會(huì)被轉(zhuǎn)義,從而匹配不到 case-name caseName CaseName 這三種注冊(cè)方式任意一種, 所以在html模板中 必須以 case-name 聲明自定義標(biāo)簽,這種格式的標(biāo)簽會(huì)被vue編譯器進(jìn)行轉(zhuǎn)義,能夠匹配 case-name caseName CaseName 三種注冊(cè)方式中任意一種
    html模板使用場景
    vue掛載在指定(el)上時(shí),若(el)內(nèi)部存在DOM模板則會(huì)將其視為vue模板進(jìn)行渲染
  • prop傳遞屬性需要定義類型、設(shè)置默認(rèn)值、是否必傳、驗(yàn)證函數(shù)
  • 樣式文件添加作用域scoped
  • 樣式穿透使用::v-deep

vue模板插值

<%= VALUE %> 用來做不轉(zhuǎn)義插值;
<%- VALUE %> 用來做 HTML 轉(zhuǎn)義插值;
<% expression %> 用來描述 JavaScript 流程控制。
an example
<link rel="icon" href="<%= BASE_URL %>favicon.ico">

vue添加工具函數(shù)

  • 以模塊的形式,每個(gè)組件內(nèi)使用時(shí)單獨(dú)引入(使用麻煩)
  • 使用全局的mixin混入,相當(dāng)于每個(gè)實(shí)例上都定義一次該方法,(代碼分散、不利于維護(hù))
  • 全局provid注入,使用inject引入,在引入時(shí)存在一個(gè)遞歸向上的查找過程、類似于原型鏈
  • Vue構(gòu)造函數(shù)原型中注冊(cè)($、_、)兩種屬性名起始key以被vue內(nèi)置使用,注意使用其他關(guān)鍵字(推薦使用)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容