\documentclass[10pt,a4paper]{article} % Packages \usepackage{fancyhdr} % For header and footer \usepackage{multicol} % Allows multicols in tables \usepackage{tabularx} % Intelligent column widths \usepackage{tabulary} % Used in header and footer \usepackage{hhline} % Border under tables \usepackage{graphicx} % For images \usepackage{xcolor} % For hex colours %\usepackage[utf8x]{inputenc} % For unicode character support \usepackage[T1]{fontenc} % Without this we get weird character replacements \usepackage{colortbl} % For coloured tables \usepackage{setspace} % For line height \usepackage{lastpage} % Needed for total page number \usepackage{seqsplit} % Splits long words. %\usepackage{opensans} % Can't make this work so far. Shame. Would be lovely. \usepackage[normalem]{ulem} % For underlining links % Most of the following are not required for the majority % of cheat sheets but are needed for some symbol support. \usepackage{amsmath} % Symbols \usepackage{MnSymbol} % Symbols \usepackage{wasysym} % Symbols %\usepackage[english,german,french,spanish,italian]{babel} % Languages % Document Info \author{chaoweiyi (chaoweiyi)} \pdfinfo{ /Title (vue-2-x-api.pdf) /Creator (Cheatography) /Author (chaoweiyi (chaoweiyi)) /Subject (Vue 2.x API Cheat Sheet) } % Lengths and widths \addtolength{\textwidth}{6cm} \addtolength{\textheight}{-1cm} \addtolength{\hoffset}{-3cm} \addtolength{\voffset}{-2cm} \setlength{\tabcolsep}{0.2cm} % Space between columns \setlength{\headsep}{-12pt} % Reduce space between header and content \setlength{\headheight}{85pt} % If less, LaTeX automatically increases it \renewcommand{\footrulewidth}{0pt} % Remove footer line \renewcommand{\headrulewidth}{0pt} % Remove header line \renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit % This two commands together give roughly % the right line height in the tables \renewcommand{\arraystretch}{1.3} \onehalfspacing % Commands \newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour \newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols \newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns \newcommand{\tn}{\tabularnewline} % Required as custom column type in use % Font and Colours \definecolor{HeadBackground}{HTML}{333333} \definecolor{FootBackground}{HTML}{666666} \definecolor{TextColor}{HTML}{333333} \definecolor{DarkBackground}{HTML}{55B881} \definecolor{LightBackground}{HTML}{F4FAF7} \renewcommand{\familydefault}{\sfdefault} \color{TextColor} % Header and Footer \pagestyle{fancy} \fancyhead{} % Set header to blank \fancyfoot{} % Set footer to blank \fancyhead[L]{ \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{C} \SetRowColor{DarkBackground} \vspace{-7pt} {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}} } \end{tabulary} \columnbreak \begin{tabulary}{11cm}{L} \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{Vue 2.x API Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{chaoweiyi (chaoweiyi)} via \textcolor{DarkBackground}{\uline{cheatography.com/166910/cs/34939/}}} \end{tabulary} \end{multicols}} \fancyfoot[L]{ \footnotesize \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{LL} \SetRowColor{FootBackground} \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}} \\ \vspace{-2pt}chaoweiyi (chaoweiyi) \\ \uline{cheatography.com/chaoweiyi} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Published 26th October, 2022.\\ Updated 26th October, 2022.\\ Page {\thepage} of \pageref{LastPage}. \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}} \\ \SetRowColor{white} \vspace{-5pt} %\includegraphics[width=48px,height=48px]{dave.jpeg} Measure your website readability!\\ www.readability-score.com \end{tabulary} \end{multicols}} \begin{document} \raggedright \raggedcolumns % Set font size to small. Switch to any value % from this page to resize cheat sheet text: % www.emerson.emory.edu/services/latex/latex_169.html \footnotesize % Small font. \begin{multicols*}{2} \begin{tabularx}{8.4cm}{x{2.88 cm} x{5.12 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{全局配置}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}silent & 取消 Vue 所有的日志与警告 \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \seqsplit{optionMergeStrategies} & \seqsplit{自定义合并策略的选项} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} devtools & \seqsplit{配置是否允许检查代码} \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} errorHandler & \seqsplit{未捕获错误的处理函数} \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} warnHandler & \seqsplit{警告自定义处理函数} \tn % Row Count 10 (+ 2) % Row 5 \SetRowColor{white} \seqsplit{ignoredElements} & 忽略在 Vue 之外的自定义元素 \tn % Row Count 12 (+ 2) % Row 6 \SetRowColor{LightBackground} keyCodes & 给 v-on 自定义键位别名 \tn % Row Count 14 (+ 2) % Row 7 \SetRowColor{white} performance & 性能追踪 \tn % Row Count 15 (+ 1) % Row 8 \SetRowColor{LightBackground} productionTip & \seqsplit{启动时生成生产提示} \tn % Row Count 17 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.8 cm} x{5.2 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{全局 API}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}Vue.extend & \seqsplit{构造器,创建一个"子类"} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} Vue.nextTick & 获取更新后的 DOM \tn % Row Count 3 (+ 1) % Row 2 \SetRowColor{LightBackground} Vue.set & \seqsplit{向响应式对象中添加一个} property \tn % Row Count 5 (+ 2) % Row 3 \SetRowColor{white} Vue.delete & 删除对象的 property \tn % Row Count 6 (+ 1) % Row 4 \SetRowColor{LightBackground} Vue.directive & \seqsplit{注册或获取全局指令} \tn % Row Count 8 (+ 2) % Row 5 \SetRowColor{white} Vue.filter & \seqsplit{注册或获取全局过滤器} \tn % Row Count 10 (+ 2) % Row 6 \SetRowColor{LightBackground} Vue.component & \seqsplit{注册或获取全局组件} \tn % Row Count 12 (+ 2) % Row 7 \SetRowColor{white} Vue.use & 安装 Vue.js 插件 \tn % Row Count 13 (+ 1) % Row 8 \SetRowColor{LightBackground} Vue.mixin & 全局注册混入 \tn % Row Count 14 (+ 1) % Row 9 \SetRowColor{white} Vue.compile & \seqsplit{将一个模板字符串编译成} render 函数 \tn % Row Count 16 (+ 2) % Row 10 \SetRowColor{LightBackground} \seqsplit{Vue.observable} & 让一个对象可响应 \tn % Row Count 17 (+ 1) % Row 11 \SetRowColor{white} Vue.version & 提供字符串形式的 Vue 安装版本号 \tn % Row Count 19 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.32 cm} x{5.68 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{选项 / 数据}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}data & Vue 实例的数据对象 \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} props & \seqsplit{用于接收来自父组件的数据} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} propsData & 创建实例时传递 \seqsplit{props,主要作用是方便测试} \tn % Row Count 7 (+ 3) % Row 3 \SetRowColor{white} computed & \seqsplit{计算属性,计算属性的结果会被缓存} \tn % Row Count 9 (+ 2) % Row 4 \SetRowColor{LightBackground} methods & \seqsplit{实例或指令中使用的方法} \tn % Row Count 11 (+ 2) % Row 5 \SetRowColor{white} watch & \seqsplit{侦听属性,键是需要观察的表达式} \tn % Row Count 13 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.08 cm} x{5.92 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{选项 / DOM}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}el & Vue 实例的挂载目标 \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} template & 字符串模板作为 Vue 实例的标识使用 \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} render & \seqsplit{渲染函数,字符串模板的代替方案} \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} \seqsplit{renderError} & \seqsplit{渲染函数遭遇错误时,提供另外一种渲染输出} \tn % Row Count 9 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.8 cm} x{5.2 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{选项 / 资源}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}directives & 包含 Vue \seqsplit{实例可用指令的哈希表} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} filters & 包含 Vue \seqsplit{实例可用过滤器的哈希表} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} components & 包含 Vue \seqsplit{实例可用组件的哈希表} \tn % Row Count 6 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.48 cm} x{5.52 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{选项 / 组合}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}parent & \seqsplit{指定已创建的实例之父实例,在两者之间建立父子关系} \tn % Row Count 3 (+ 3) % Row 1 \SetRowColor{white} mixins & \seqsplit{接收一个混入对象的数组} \tn % Row Count 5 (+ 2) % Row 2 \SetRowColor{LightBackground} extends & \seqsplit{允许声明扩展另一个组件,而无需使用} Vue.extend \tn % Row Count 8 (+ 3) % Row 3 \SetRowColor{white} provide / inject & \seqsplit{这对选项需要一起使用,以允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在其上下游关系成立的时间里始终生效} \tn % Row Count 15 (+ 7) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.32 cm} x{5.68 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{选项 / 其它}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}name & \seqsplit{允许组件模板递归地调用自身} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} delimiters & \seqsplit{改变纯文本插入分隔符} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} functional & 使组件无状态 (没有 data) 和无实例 (没有 this \seqsplit{上下文),渲染的代价更小} \tn % Row Count 8 (+ 4) % Row 3 \SetRowColor{white} model & \seqsplit{允许一个自定义组件在使用} v-model 时定制 prop 和 event \tn % Row Count 11 (+ 3) % Row 4 \SetRowColor{LightBackground} \seqsplit{inheritAttrs} & props 的 attribute \seqsplit{绑定,默认行为将会被去掉} \tn % Row Count 13 (+ 2) % Row 5 \SetRowColor{white} comments & 当设为 true \seqsplit{时,将会保留且渲染模板中的} HTML 注释 \tn % Row Count 16 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.04 cm} x{4.96 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{选项 / 生命周期钩子}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}beforeCreate & \seqsplit{进行数据侦听和事件/侦听器的配置之前同步调用} \tn % Row Count 3 (+ 3) % Row 1 \SetRowColor{white} created & \seqsplit{在实例创建完成后被立即同步调用} \tn % Row Count 5 (+ 2) % Row 2 \SetRowColor{LightBackground} beforeMount & \seqsplit{在挂载开始之前被调用:相关的} render 函数首次被调用 \tn % Row Count 8 (+ 3) % Row 3 \SetRowColor{white} mounted & \seqsplit{实例被挂载后调用,这时} el 被新创建的 vm.\$el 替换了 \tn % Row Count 11 (+ 3) % Row 4 \SetRowColor{LightBackground} beforeUpdate & \seqsplit{在数据发生改变后,DOM} \seqsplit{被更新之前被调用} \tn % Row Count 14 (+ 3) % Row 5 \SetRowColor{white} updated & \seqsplit{在数据更改导致的虚拟} DOM \seqsplit{重新渲染和更新完毕之后被调用} \tn % Row Count 18 (+ 4) % Row 6 \SetRowColor{LightBackground} activated & 被 keep-alive \seqsplit{缓存的组件激活时调用} \tn % Row Count 20 (+ 2) % Row 7 \SetRowColor{white} deactivated & 被 keep-alive \seqsplit{缓存的组件失活时调用} \tn % Row Count 22 (+ 2) % Row 8 \SetRowColor{LightBackground} beforeDestroy & \seqsplit{实例销毁之前调用,在这一步,实例仍然完全可用} \tn % Row Count 25 (+ 3) % Row 9 \SetRowColor{white} destroyed & 实例销毁后调用 \tn % Row Count 26 (+ 1) % Row 10 \SetRowColor{LightBackground} errorCaptured & \seqsplit{在捕获一个来自后代组件的错误时被调用} \tn % Row Count 29 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.64 cm} x{5.36 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{实例 property}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}vm.\$data & Vue \seqsplit{实例观察的数据对象} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} vm.\$props & 当前组件接收到的 props 对象 \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} vm.\$el & Vue 实例使用的根 DOM 元素 \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} vm.\$options & 用于当前 Vue 实例的初始化选项 \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} vm.\$parent & \seqsplit{父实例,如果当前实例有的话} \tn % Row Count 10 (+ 2) % Row 5 \SetRowColor{white} vm.\$root & 当前组件树的根 Vue \seqsplit{实例,没有父实例则是自己} \tn % Row Count 13 (+ 3) % Row 6 \SetRowColor{LightBackground} vm.\$children & \seqsplit{当前实例的直接子组件} \tn % Row Count 15 (+ 2) % Row 7 \SetRowColor{white} vm.\$slots & \seqsplit{用来访问被插槽分发的内容} \tn % Row Count 17 (+ 2) % Row 8 \SetRowColor{LightBackground} \seqsplit{vm.\$scopedSlots} & \seqsplit{用来访问作用域插槽} \tn % Row Count 19 (+ 2) % Row 9 \SetRowColor{white} vm.\$refs & \seqsplit{一个对象,持有注册过} ref attribute 的所有 DOM 元素和组件实例 \tn % Row Count 23 (+ 4) % Row 10 \SetRowColor{LightBackground} vm.\$isServer & 当前 Vue \seqsplit{实例是否运行于服务器} \tn % Row Count 25 (+ 2) % Row 11 \SetRowColor{white} vm.\$attrs & \seqsplit{包含了父作用域中不作为} prop 被识别 (且获取) 的 attribute 绑定 (class 和 style 除外) \tn % Row Count 30 (+ 5) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{2.64 cm} x{5.36 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{实例 property (cont)}} \tn % Row 12 \SetRowColor{LightBackground} \seqsplit{vm.\$listeners} & \seqsplit{包含了父作用域中的} (不含 .native 修饰器的) v-on 事件监听器 \tn % Row Count 3 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.72 cm} x{5.28 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{实例方法 / 数据}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}vm.\$watch & 观察 Vue \seqsplit{实例上的一个表达式或者一个函数计算结果的变化} \tn % Row Count 3 (+ 3) % Row 1 \SetRowColor{white} vm.\$set & 这是全局 Vue.set 的别名 \tn % Row Count 5 (+ 2) % Row 2 \SetRowColor{LightBackground} vm.\$delete & 这是全局 Vue.delete 的别名 \tn % Row Count 7 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.48 cm} x{5.52 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{实例方法 / 事件}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}vm.\$on & \seqsplit{监听当前实例上的自定义事件} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} vm.\$once & \seqsplit{监听一个自定义事件,但是只触发一次} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} vm.\$off & \seqsplit{移除自定义事件监听器} \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} vm.\$emit & \seqsplit{触发当前实例上的事件,附加参数都会传给监听器回调} \tn % Row Count 9 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.72 cm} x{5.28 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{实例方法 / 生命周期}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}vm.\$mount & \seqsplit{手动地挂载一个未挂载的实例} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \seqsplit{vm.\$forceUpdate()} & 迫使 Vue 实例重新渲染 \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} vm.\$nextTick & 将回调延迟到下次 DOM \seqsplit{更新循环之后执行,在修改数据之后立即使用它,然后等待} DOM 更新 \tn % Row Count 9 (+ 5) % Row 3 \SetRowColor{white} \seqsplit{vm.\$destroy()} & \seqsplit{完全销毁一个实例。清理它与其它实例的连接,解绑它的全部指令及事件监听器。} \tn % Row Count 14 (+ 5) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.48 cm} x{5.52 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{指令}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}v-text & 更新元素的 \seqsplit{textContent,同插值语法} \{\{ \}\} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} v-html & 更新元素的 innerHTML \tn % Row Count 3 (+ 1) % Row 2 \SetRowColor{LightBackground} v-show & \seqsplit{根据表达式之真假值,切换元素的} display CSS property \tn % Row Count 6 (+ 3) % Row 3 \SetRowColor{white} v-if & 有条件地渲染元素 \tn % Row Count 7 (+ 1) % Row 4 \SetRowColor{LightBackground} v-else & 为 v-if 或者 v-else-if 添加"else 块" \tn % Row Count 9 (+ 2) % Row 5 \SetRowColor{white} v-else-if & 表示 v-if 的"else if \seqsplit{块"。可以链式调用} \tn % Row Count 11 (+ 2) % Row 6 \SetRowColor{LightBackground} v-for & \seqsplit{基于源数据多次渲染元素或模板块} \tn % Row Count 13 (+ 2) % Row 7 \SetRowColor{white} v-on,`@` & 绑定事件监听器 \tn % Row Count 14 (+ 1) % Row 8 \SetRowColor{LightBackground} \seqsplit{v-bind,`:`} & \seqsplit{动态地绑定一个或多个} \seqsplit{attribute,或一个组件} prop 到表达式 \tn % Row Count 17 (+ 3) % Row 9 \SetRowColor{white} v-model & \seqsplit{在表单控件或者组件上创建双向绑定} \tn % Row Count 19 (+ 2) % Row 10 \SetRowColor{LightBackground} \seqsplit{v-slot,`\#`} & \seqsplit{提供具名插槽或需要接收} prop 的插槽 \tn % Row Count 21 (+ 2) % Row 11 \SetRowColor{white} v-pre & \seqsplit{跳过这个元素和它的子元素的编译过程} \tn % Row Count 23 (+ 2) % Row 12 \SetRowColor{LightBackground} v-cloak & \seqsplit{这个指令保持在元素上直到关联实例结束编译} \tn % Row Count 26 (+ 3) % Row 13 \SetRowColor{white} v-once & \seqsplit{只渲染元素和组件一次} \tn % Row Count 28 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.56 cm} x{5.44 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{特殊 attribute}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}key & 在新旧 nodes 对比时辨识 VNodes,结合 v-for \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} ref & \seqsplit{给元素或子组件注册引用信息,结合} \$refs \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} is & \seqsplit{用于动态组件且基于} DOM \seqsplit{内模板的限制来工作} \tn % Row Count 7 (+ 3) % Row 3 \SetRowColor{white} slot \textasciicircum{}废弃\textasciicircum{} & \seqsplit{用于标记往哪个具名插槽中插入子组件内容,推荐} v-slot \tn % Row Count 10 (+ 3) % Row 4 \SetRowColor{LightBackground} slot-scope \textasciicircum{}废弃\textasciicircum{} & \seqsplit{用于将元素或组件表示为作用域插槽,推荐} v-slot \tn % Row Count 13 (+ 3) % Row 5 \SetRowColor{white} scope \textasciicircum{}废弃\textasciicircum{} & 被 slot-scope \seqsplit{取代,用于表示一个作为带作用域的插槽的} \textless{}template\textgreater{} 元素 \tn % Row Count 17 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.72 cm} x{5.28 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{内置的组件}} \tn % Row 0 \SetRowColor{LightBackground} \{\{width=40\}\}component & \seqsplit{渲染一个"元组件"为动态组件。依} is \seqsplit{的值,来决定哪个组件被渲染} \tn % Row Count 4 (+ 4) % Row 1 \SetRowColor{white} transition & \seqsplit{动画效果,作为单个元素/组件的过渡效果} \tn % Row Count 7 (+ 3) % Row 2 \SetRowColor{LightBackground} \seqsplit{transition-group} & \seqsplit{动画效果,作为多个元素/组件的过渡效果} \tn % Row Count 10 (+ 3) % Row 3 \SetRowColor{white} keep-alive & \seqsplit{主要用于保留组件状态或避免重新渲染} \tn % Row Count 12 (+ 2) % Row 4 \SetRowColor{LightBackground} slot & 插槽,作为组件模板之中的内容分发插槽。\textless{}slot\textgreater{} 元素自身将被替换 \tn % Row Count 16 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}