Vue数据绑定的方式
- 单向绑定
双大括号{{}} --> 主要用于html内字符串的绑定。
v-bind绑定 --> 主要用于html属性的绑定,可直接简写为一个冒号: - 双向绑定
v-model
(有一点需要避坑,:model与v-model的区别。:model是v-bind:model的缩写,说到底也还是单向绑定。v-model实现的是双向绑定。)
v-once
v-once 也是一个不需要表达式的指令,作用是定义它的组件或者元素只是渲染一次,包括元素或者组件所有的子节点。首次渲染之后,不再随着数据的变化重新渲染,将被视作静态内容。
Vue中如何注册全局组件和局部组件
Vue注册组件的方式有两种,全局组件和局部组件,全局组件的使用最多,局部组件主要用于一些特定页面的展示。
- 注册全局组件
在src文件夹中新建components文件夹,components文件夹中一般存放组件文件。
然后在components文件夹中新建一个components.js文件。
在components.js文件中引入所有要注册的全局组件。在main.js中引入components.js文件并使用Vue.use()进行全局注册。import 组件名字A from '@/components/组件名字A' import 组件名字B from '@/components/组件名字B ' export default (Vue)=>{ Vue.component("A", 组件名字A ) // 前者必须是字符串格式,就是<A></A> Vue.component('B', 组件名字B ) }import components from '@/components/components.js' Vue.use(components) new Vue({ // ... }) - 注册局部组件
一旦全局注册一个组件,就不管这个组件使用与否,它都会随着Vue的加载而加载。因此,对于一些并不频繁使用的组件,可以采集用局部注册的方式。使用的时候,直接在父组件中使用注册的名字即可:// 局部子组件 const hello = { template:"<div>打个招呼:我是{{name}}</div>", data(){ return{ name:"张学友" } } } // 在父组件中注册定义好的局部子组件 const app = new Vue({ el:"#app", components:{ // 列出所有使用到的局部子组件 hello1: hello } })<div id="app"> <hello1></hello1> </div>