vue指令-4

简介: vue指令4

v-for 与 v-if 一同使用

当 v-for 和 v-if 一起使用时,v-for 的优先级比 v-if 要高,这意味着 v-if 将分别重复运行与每个 v-for 循环中。如果在渲染一个列表时,对列表中的某些项需要根据条件来判断是否渲染,那么就可以将 v-if 和 v-for 一起使用

演示代码:

<template>  <div id="app">    <h1>已完成</h1>    <ul>      <li v-for="plan in plans" v-if="plan.iscomplete">{{plan.content}}</li>    </ul>    <h1>未完成</h1>    <ul>      <li v-for="plan in plans" v-if="!plan.iscomplete">{{plan.content}}</li>    </ul>    <router-view />  </div></template><script>export default {  name: 'App',  data() {    return {      plans: [        {          iscomplete: false,          content: '买菜'        },        {          iscomplete: true,          content: '学vue'        },        {          iscomplete: true,          content: '打羽毛球'        },        {          iscomplete: false,          content: '做饭'        }      ]    }  }}</script>

复制代码

运行结果:


网络异常,图片无法展示
|


注意如果只是要根据某条件的真假来判断是否要跳过整个循环的执行可以将 v-if 置于外层元素上

v-bind 指令

v-bind 指令主要用于响应更新 HTML 元素的属性,将一个或者多个属性或者一个组件的 prop 动态绑定到表达式

演示代码:

<template>  <div id="app">    <a v-bind:href="juejin">掘金 </a><br>    <a :href="'http//'+filename">火狐 </a><br>    <a :[attrname]="url">百度 </a><br>  </div></template><script>export default {  name: 'App',  data() {    return {      attrname: 'href',      juejin: 'https://juejin.cn/',      url: 'http://www.baidu.com',      filename: 'home.firefoxchina.cn/'    }  }}</script>

复制代码

运行结果


网络异常,图片无法展示
|


代码<a v-bind:href="juejin">掘金 </a>是绑定一个属性;

<a :href="'http//'+filename">火狐 </a>:href 是 v-bind:href 的缩写,这里用的是内联字符串拼接;

<a :[attrname]="url">百度 </a>:[attrname]是动态属性名

v-model 指令

v-model 指令用来在表单<input><textarea><select>元素上创建双向数据绑定,他会根据控件类型自动选取正确的方法来更新元素。但 v-model 本质上不过是语法糖,他负责监听用户的输入事件以更新数据,并对一些极端场景进行特殊处理

演示代码:

<template>  <div id="app">    <p>{{message}}</p>    <input type="text" v-model="message">  </div></template><script>export default {  name: 'App',  data() {    return {      message: 'hello world'    }  }}</script>

复制代码

运行结果


网络异常,图片无法展示
|


在表单输入的内容<p>标签的内容也会实时更新

目录
相关文章
|
8天前
|
JavaScript 前端开发
如何在 Vue 项目中配置 Tree Shaking?
通过以上针对 Webpack 或 Rollup 的配置方法,就可以在 Vue 项目中有效地启用 Tree Shaking,从而优化项目的打包体积,提高项目的性能和加载速度。在实际配置过程中,需要根据项目的具体情况和需求,对配置进行适当的调整和优化。
|
8天前
|
存储 缓存 JavaScript
在 Vue 中使用 computed 和 watch 时,性能问题探讨
本文探讨了在 Vue.js 中使用 computed 计算属性和 watch 监听器时可能遇到的性能问题,并提供了优化建议,帮助开发者提高应用性能。
|
8天前
|
存储 缓存 JavaScript
如何在大型 Vue 应用中有效地管理计算属性和侦听器
在大型 Vue 应用中,合理管理计算属性和侦听器是优化性能和维护性的关键。本文介绍了如何通过模块化、状态管理和避免冗余计算等方法,有效提升应用的响应性和可维护性。
|
8天前
|
存储 缓存 JavaScript
Vue 中 computed 和 watch 的差异
Vue 中的 `computed` 和 `watch` 都用于处理数据变化,但使用场景不同。`computed` 用于计算属性,依赖于其他数据自动更新;`watch` 用于监听数据变化,执行异步或复杂操作。
|
7天前
|
JavaScript 前端开发 UED
vue学习第二章
欢迎来到我的博客!我是一名自学了2年半前端的大一学生,熟悉JavaScript与Vue,目前正在向全栈方向发展。如果你从我的博客中有所收获,欢迎关注我,我将持续更新更多优质文章。你的支持是我最大的动力!🎉🎉🎉
|
9天前
|
存储 JavaScript 开发者
Vue 组件间通信的最佳实践
本文总结了 Vue.js 中组件间通信的多种方法,包括 props、事件、Vuex 状态管理等,帮助开发者选择最适合项目需求的通信方式,提高开发效率和代码可维护性。
|
7天前
|
JavaScript 前端开发 开发者
vue学习第一章
欢迎来到我的博客!我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。自学前端2年半,熟悉JavaScript与Vue,正向全栈方向发展。博客内容涵盖Vue基础、列表展示及计数器案例等,希望能对你有所帮助。关注我,持续更新中!🎉🎉🎉
|
9天前
|
存储 JavaScript
Vue 组件间如何通信
Vue组件间通信是指在Vue应用中,不同组件之间传递数据和事件的方法。常用的方式有:props、自定义事件、$emit、$attrs、$refs、provide/inject、Vuex等。掌握这些方法可以实现父子组件、兄弟组件及跨级组件间的高效通信。
|
14天前
|
JavaScript
Vue基础知识总结 4:vue组件化开发
Vue基础知识总结 4:vue组件化开发
|
14天前
|
存储 JavaScript
Vue 状态管理工具vuex
Vue 状态管理工具vuex