js加減乘除運算代碼「html函數定義格式」

由於parse函數代碼實在過於龐大,我這裡就不一次性貼出源代碼了,大家可以前往(
https://github.com/vuejs/vue/blob/0baa129d4cad44cf1847b0eaf07e95d4c71ab494/src/compiler/parser/index.js#L79)查看源代碼。

我們來總結一下該函數的主要功能:

1、warnOnce 函數(用於提示錯誤)

2、closeElement (處理標籤的結束,匹配</ 開頭)

3、trimEndingWhitespace 刪除結尾的空白節點

4、驗證根容器的合法性

規則如下:

1、標籤名稱不能是 slot 或者 template

2、不能存在 v-for 指令

5、parseHTML 函數(解析html的核心函數),該函數會有單獨的篇章來分析,我們先來說一下 「parseHTML 」 函數的參數,主要有12個參數

1、warn 類型為函數

主要用於錯誤提示

2、expectHTML 類型為布爾值

主要用於判斷出來標籤結束

3、isUnaryTag 類型為布爾值

判斷是否為一元標籤 如:<br/>、<hr /> <input /> <img />等

4、canBeLeftOpenTag 類型為函數

是否為此類標籤:’colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source’

5、shouldDecodeNewlines 類型為布爾值

解碼換行符

6、
shouldDecodeNewlinesForHref 類型為布爾值

解碼href換行符

7、shouldKeepComment 類型為布爾值

是否保留注釋

8、outputSourceRange 類型為布爾值

是否保留匹配範圍(start、end)的位置

9、start 類型為函數

處理匹配的標籤開始

10、end 類型為函數

處理匹配的標籤結束

11、chars 類型為函數

處理匹配的空白標籤

12、comment 類型為函數

處理模板內的注釋標籤

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/209377.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-08 15:36
下一篇 2024-12-08 15:36

相關推薦

發表回復

登錄後才能評論