vue中特殊特性
key
预期:
number | stringkey的特殊属性主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes。如果不使用 key,Vue 会使用一种最大限度减少动态元素并且尽可能的尝试修复/再利用相同类型元素的算法。使用 key,它会基于 key 的变化重新排列元素顺序,并且会移除 key 不存在的元素。有相同父元素的子元素必须有独特的 key。重复的 key 会造成渲染错误。
最常见的用例是结合
v-for:<ul>
<li v-for="item in items" :key="item.id">...</li>
</ul>完整地触发组件的生命周期钩子它也可以用于强制替换元素/组件而不是重复使用它。当你遇到如下场景时它可能会很有用:
- 触发过渡
例如:
<transition>
<span :key="text">{{ text }}</span>
</transition>当
text发生改变时,<span>会随时被更新,因此会触发过渡
。
ref
预期:
stringref被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的$refs对象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;如果用在子组件上,引用就指向组件实例:<!-- `vm.$refs.p` will be the DOM node -->
<p ref="p">hello</p> <!-- `vm.$refs.child` will be the child component instance -->
<child-component ref="child"></child-component>关于 ref 注册时间的重要说明:因为 ref 本身是作为渲染结果被创建的,在初始渲染的时候你不能访问它们 - 它们还不存在!
$refs也不是响应式的,因此你不应该试图用它在模板中做数据绑定。当v-for用于元素或组件的时候,引用信息将是包含 DOM 节点或组件实例的数组。参考:子组件 Refs
slot
预期:
string用于标记往哪个具名插槽中插入子组件内容。
详细用法,请参考下面指南部分的链接。
参考:具名插槽
slot-scope
2.5.0 新增
预期:
function argument expression用法:
用于将元素或组件表示为作用域插槽。特性的值应该是可以出现在函数签名的参数位置的合法的 JavaScript 表达式。这意味着在支持的环境中,你还可以在表达式中使用 ES2015 解构。它在 2.5.0+ 中替代了
scope。此属性不支持动态绑定。
参考:Scoped Slots
scope replaced
用于表示一个作为带作用域的插槽的 <template> 元素,它在 2.5.0+ 中被 slot-scope 替代。
用法:
除了
scope只可以用于<template>元素,其它和slot-scope都相同。
is
预期:
string | Object (组件的选项对象)用于动态组件且基于 DOM 内模板的限制来工作。
示例:
<!-- 当 `currentView` 改变时,组件也跟着改变 -->
<component v-bind:is="currentView"></component> <!-- 这样做是有必要的,因为 `<my-row>` 放在一个 -->
<!-- `<table>` 内可能无效且被放置到外面 -->
<table>
<tr is="my-row"></tr>
</table>更多的使用细节,请移步至下面的链接。
See also:
vue中特殊特性的更多相关文章
- vue中:key 和react 中key={} 的作用,以及ref的特性?
vue中:key 和react 中key={} 为了给 vue 或者react 一个提示,以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一 key 属性 一句话概括就是 ...
- vue中的重要特性
一.vue中的自定义组件 html的代码: <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理
基本概念部分(一):理解CORS 说道Vue的跨域AJAX,我想先梳理一遍CORS跨域,"跨域资源共享"(Cross-origin resource sharing),它是一个W3 ...
- 理解Vue中的Render渲染函数
理解Vue中的Render渲染函数 VUE一般使用template来创建HTML,然后在有的时候,我们需要使用javascript来创建html,这时候我们需要使用render函数.比如如下我想要实现 ...
- Vue基础01vue的基本示例,vue的双向数据绑定,vue中常见的几种用法,vue相关常见指令
自学vue框架,每天记录重要的知识点,与大家分享!有不足之处,希望大家指正. 本篇将讲述:vue的基本示例,vue的双向数据绑定,vue中常见的几种用法,vue相关常见指令 前期学习基础,使用vue. ...
- 在vue中使用import()来代替require.ensure()实现代码打包分离
最近看到一种router的写法 import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) const login = ...
- vue中Axios的封装和API接口的管理
前端小白的声明: 这篇文章为转载:主要是为了方便自己查阅学习.如果对原博主造成侵犯,我会立即删除. 转载地址:点击查看 如图,面对一团糟代码的你~~~真的想说,What F~U~C~K!!! 回归正题 ...
- 基于iscroll的better-scroll在vue中的使用
什么是 better-scroll better-scroll 是一个移动端滚动的解决方案,它是基于 iscroll 的重写,它和 iscroll 的主要区别在这里.better-scroll 也很强 ...
- better-scroll在vue中的坑
在我们日常的移动端项目开发中,处理滚动列表是再常见不过的需求了,以滴滴为例,可以是这样竖向滚动的列表,如图所示: 也可以是横向滚动的导航栏,如图所示: 可以打开“微信 —> 钱包—>滴滴出 ...
随机推荐
- 英语词根与单词的说文解字---词根示例1、第10页 st(at)
英语词根与单词的说文解字---词根示例1.第10页 st(at) 一.总结 一句话总结: 站 state,establish,constitution 英 [ɪ'stæblɪʃ; e-] 美 [ɪˈ ...
- Chrome自动化搭建
工具安装: 1.selenium-java-2.53.0-srcs.jar 2.selenium-java-2.53.0.jar 3.下载chromedriver.exe(下载地址:http://ch ...
- IIS优化整理
IIS 之 在IIS7.IIS7.5中应用程序池最优配置方案 找到Web站点对应的应用程序池,“应用程序池” → 找到对应的“应用程序池” → 右键“高级设置...” 一.一般优化方案 1.基本设置 ...
- 解决Mybatis配置ORM映射 时分秒都为0
方法一: Date类型的类成员变量使用java.sql.Timestamp 方法二: Mybatis的映射配置javatype=Timestamp.class
- opencv 图片降噪
—— # -*- coding: utf-8 -* import numpy as np import cv2 cap = cv2.VideoCapture(0) while True: _ , fr ...
- 2793 [Poi2012]Vouchers
我们直接模拟就可以了= = now[x]表示x的倍数已经取到x * i了,于是每次读入x,直接向上枚举x个没取过的数即可. /************************************* ...
- js 多个倒计时,毫秒倒计时
其实主要是借鉴了了这篇文的写法(http://tuzwu.iteye.com/blog/819081),俺稍作了修改,以便更适合我的需要: 实现功能:调用一个函数,传入html元素的id,和一个截止时 ...
- 关于TCP/IP协议
TCP的特点: TCP是面向连接的传输层协议 TCP的传输是可靠传输 TCP是全双工的通信 TCP的连接是点对点的传输 TCP和UDP的区别 tcp是面向连接的,两台主机的通信之前必须通过三次握手建立 ...
- Appium测试Webview
通常情况下我们都是通过Android自带的tools下的UI automator viewer来获取控件或元素的xpath.class.id等来直接进行定位 如下面的“用户登录”按钮: 但是有一些并不 ...
- flash cc新建swc文件