Vue.js中v-bind指令的用法介绍


Posted in Vue.js onMarch 13, 2022

一、什么是v-bind指令

v-bind指令用于响应更新HTML特性,允许将一个或多个属性动态绑定到表达式。v-bind是应用在动态属性上面的。

二、语法

v-bind语法如下:

v-bind:动态属性名称="变量"

也可以简写成下面的形式:

:动态属性名称="变量"

 代码示例如下:

<img :src="imgUrl" :title="title" />

这里的src和title都是<img>标签的属性,这里都是绑定到变量。

v-bind中还可以使用判断,例如:

<img :src="flag?imgUrl:imgUrl2" />

 这里表示如果flag变量的值为true,那么src属性的值是变量imgUrl的值,否则src的属性值就是变量imgUrl2对应的值。

注意:只要是HTML标签的属性都可以这样去绑定属性值。

三、在class属性中使用v-bind指令

代码示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>在class属性中使用v-bind指令</title>
    <!--引入vue.js-->
    <script src="node_modules/vue/dist/vue.js" ></script>
    <script>
       window.onload=function(){
           // 构建vue实例
           new Vue({
               el:"#my",// el即element,表示挂载的元素,不能挂载在HTML和body元素上面
               // data表示数据,data中可以是各种数据格式
               data:{
                      flag:true,
                      varStyle:"bindStyle", //值是样式的名称
                      style1:"colorStyle",
                      style2:"colorStyle2"
               },
               // 方法
               methods:{

               }
           })
       }
    </script>
    <style>
      .colorStyle {
        color: #ff6600;
      }
      .colorStyle2{
          margin-top: 10px;
          background-color: chartreuse;
          border: 1px solid blue;
      }
      .bindStyle {
        margin-top: 5px;
        color: red;
      }
      .bindStyle2 {
        margin-top: 5px;
        color: red;
        background-color: green;
      }
    </style>
</head>
<body>
    <div id="my">
        <!--单个样式引用,这里是直接写的data里面变量的名称-->
        <div :class="varStyle">这里是使用v-bind改变样式</div>
        <!--单个样式引用,双引号加单引号,单引号里面是样式的名称,这种方式可以不在data里面写变量-->
        <div :class="'bindStyle2'">直接引用样式的名称,不需要在data里面定义变量</div>
        <!--多个样式引用 使用数组的方式-->
        <div :class="[style1,style2]">这里是同时使用多个样式</div>
        <!--条件判断 格式:样式名:判断条件 注意:样式名不能用变量-->
        <div :class="{'colorStyle2':flag}">条件判断</div>
        <!--三目运算符 flag为真显示style2变量对应的样式,否则显示style1变量对应的样式-->
        <div :class="flag?style2:style1">三目运算符</div>
    </div>
</body>
</html>

效果图如下:

Vue.js中v-bind指令的用法介绍

四、在style属性中使用v-bind指令

代码示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>style示例</title>
    <!--引入vue.js-->
    <script src="node_modules/vue/dist/vue.js" ></script>
    <script>
       window.onload=function(){
           // 构建vue实例
           new Vue({
               el:"#my",// el即element,表示挂载的元素,不能挂载在HTML和body元素上面
               // data表示数据,data中可以是各种数据格式
               data:{
                      flag:true,//布尔型
                      style1:{background:'blue'},
                      style2:{color:'red'},
                      unify:"unifyStyle"
               },
               // 方法
               methods:{

               }
           })
       }
    </script>
    <style>
       .unifyStyle{
           margin-top: 10px;
       }
    </style>
</head>
<body>
    <div id="my">
          <!--直接写内联样式:要采用驼峰写法,中间的-去掉-->
          <div :style="{color:'#f60',fontSize:'20px',marginTop:'10px'}">
              内联样式
          </div>
          <!--单个引用-->
          <div :style="style1" :class="unify">
                单个引用
          </div>
          <!--多个样式引用-->
          <div :style="[style1,style2]" :class="unify">多个样式引用</div>
          <!--三目运算符-->
          <div :style="flag?style1:style2" :class="unify">使用三目运算符进行判断</div>
    </div>
</body>
</html>

 效果图如下:

Vue.js中v-bind指令的用法介绍

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Vue.js 相关文章推荐
vue+vant实现购物车全选和反选功能
Nov 17 Vue.js
Vue使用Element实现增删改查+打包的步骤
Nov 25 Vue.js
vue 基于abstract 路由模式 实现页面内嵌的示例代码
Dec 14 Vue.js
vue使用require.context实现动态注册路由
Dec 25 Vue.js
vue3.0中友好使用antdv示例详解
Jan 05 Vue.js
手动实现vue2.0的双向数据绑定原理详解
Feb 06 Vue.js
vue-cli中实现响应式布局的方法
Mar 02 Vue.js
vue打开新窗口并实现传参的图文实例
Mar 04 Vue.js
vue使用v-model进行跨组件绑定的基本实现方法
Apr 28 Vue.js
关于Vue中的options选项
Mar 22 Vue.js
在vue中import()语法不能传入变量的问题及解决
Apr 01 Vue.js
三种方式清除vue路由跳转router-link的历史记录
Apr 10 Vue.js
Vue2.0搭建脚手架
Vue.js中v-for指令的用法介绍
Mar 13 #Vue.js
Vue如何清空对象
Mar 03 #Vue.js
Vue中Object.assign清空数据报错的解决方案
Mar 03 #Vue.js
vue实现移动端div拖动效果
Mar 03 #Vue.js
vue实现滑动解锁功能
Vue全局事件总线你了解吗
Feb 24 #Vue.js
You might like
phpMyAdmin 安装教程全攻略
2007/03/19 PHP
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
php模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
php自定义session示例分享
2014/04/22 PHP
Yii2数据库操作常用方法小结
2017/05/04 PHP
PHP魔术方法之__call与__callStatic使用方法
2017/07/23 PHP
PHP实现的随机红包算法示例
2017/08/14 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
IE浏览器PNG图片透明效果代码
2008/09/02 Javascript
Prototype Selector对象学习
2009/07/23 Javascript
javascript 伪数组实现方法
2010/10/11 Javascript
js自执行函数的几种不同写法的比较
2012/08/16 Javascript
jQuery 全选/反选以及单击行改变背景色实例
2013/07/02 Javascript
jQuery中.live()方法的用法深入解析
2013/12/30 Javascript
jQuery实现移动端手机商城购物车功能
2016/09/24 Javascript
Angular ng-repeat指令实例以及扩展部分
2016/12/26 Javascript
基于JavaScript实现的插入排序算法分析
2017/04/14 Javascript
JS基于正则表达式的替换操作(replace)用法示例
2017/04/28 Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
2018/09/30 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
Vue 实现复制功能,不需要任何结构内容直接复制方式
2019/11/09 Javascript
JS中的继承操作实例总结
2020/06/06 Javascript
Python聚类算法之DBSACN实例分析
2015/11/20 Python
一个Python最简单的接口自动化框架
2018/01/02 Python
python实现的config文件读写功能示例
2019/09/24 Python
pycharm 快速解决python代码冲突的问题
2021/01/15 Python
用html5的canvas和JavaScript创建一个绘图程序的简单实例
2016/07/06 HTML / CSS
复古风格的女装和装饰品:ModCloth
2017/12/29 全球购物
精选鞋类、服装和配饰的全球领先目的地:Bodega
2021/02/27 全球购物
生物医学工程专业学生求职信范文分享
2013/12/14 职场文书
2014幼儿园班主任工作总结
2014/12/04 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
Mysql基础知识点汇总
2021/05/26 MySQL
Vue + iView实现Excel上传功能的完整代码
2021/06/22 Vue.js
springboot + mongodb 通过经纬度坐标匹配平面区域的方法
2021/11/01 MongoDB