属性渲染

   关于标签的属性渲染统一使用v-bind属性指令,比如轮播图的src全部经过后端获得,所以我们需要对src属性做动态渲染。

基本使用

   使用v-bind属性指令,动态绑定图片的地址。

  

<body>
<main id="id-1">
<img v-bind:src="imgSrc">
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
imgSrc: "./1.jpg",
}
})
</script>

简写形式

   可以直接使用:进行简写。

<body>
<main id="id-1">
<img :src="imgSrc">
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
imgSrc: "./1.jpg",
}
})
</script>

class对象

   我们可以通过v-bind与对象,动态绑定标签的class属性。

   注意它的格式是这样的:

<div :class={c1:true,c2:false,c3:true}>内容</div>

   当class中的某一个对象的属性为true时,则代表该class被添加。

   并且我们还可以使用正常的class=类名来定制不变的类。

  

<body>
<main id="id-1">
<div :class={c1:isC1,c2:isC2,c3:isC3} class="show">内容</div>
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
isC1:true,
isC2:false,
isC3:true,
}
})
</script>

class数组

   添加class除开可以用对象的形式,也可以使用数组。

   不过数组使用很少,一般不怎么用。

   它的语法格式如下:

<div :class=[c1,c2,c3]>内容</div>
<!-- 注意,当数组内的元素没有加引号是会认为是一个变量,会去数据层寻找 -->
<!-- 如果数组内的元素加上引号,则被认位是一个字符串 -->

  

   下面是不加引号,当作变量去寻找。

  

<body>
<main id="id-1">
<div :class=[c1,c2,c3] class="show">内容</div>
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
c1:"c1Style",
c2:"c2Style",
c3:"c3Style",
}
})
</script>

  

   下面是加引号,直接会作用于标签本身。

  

<body>
<main id="id-1">
<div :class=['c1','c2','c3'] class="show">内容</div>
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
c1:"c1Style",
c2:"c2Style",
c3:"c3Style",
}
})
</script>

style对象

   我们可以通过v-bind与对象,动态绑定标签的style属性。

   它有两种书写style的方式,一种是驼峰式,一种是通过-来进行链接。

   注意它的格式是这样的:

<div :style={color:"red",fontSize:"12px",backgroundColor:bgColor}>内容</div>
<!-- 注意!最后的background没有添加单引号,这使得bgColor会当作变量去数据层中获取 -->

  

<body>
<main id="id-1">
<div :style={color:"red",fontSize:"12px",backgroundColor:bgColor}>内容</div>
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
bgColor: "green",
}
})
</script>

style数组

   除开可以使用对象语法绑定style属性,也可以通过数组语法进行绑定。

   数组中的元素必定要是数据层中的数据。

  

<body>
<main id="id-1">
<div :style=[fSize,color]>内容</div>
</main>
</body>
<script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script>
<script>
"use strict";
const v1 = new Vue({
el: "#id-1",
data: {
fSize:{"fontSize":"16px"},
color:{"backgroundColor":"green","color":"white"},
}
})
</script>

Vue 属性渲染的更多相关文章

  1. vue服务器端渲染指南研究

    什么是服务器端渲染(SSR)? Vue.js 是构建客户端应用程序的框架.默认情况下,可以在浏览器中输出 Vue 组件,进行生成 DOM 和操作 DOM.然而,也可以将同一个组件渲染为服务器端的 HT ...

  2. Vue视图渲染原理解析,从构建VNode到生成真实节点树

    前言 在 Vue 核心中除了响应式原理外,视图渲染也是重中之重.我们都知道每次更新数据,都会走视图渲染的逻辑,而这当中牵扯的逻辑也是十分繁琐. 本文主要解析的是初始化视图渲染流程,你将会了解到从挂载组 ...

  3. vue.js 渲染完成回调

    vue.js渲染完成后,想触发一些事情,写在哪里呢? 答案是mounted 例子: new Vue({ el:'#demo', data:{ text:'Hello' }, mounted:funct ...

  4. Vue条件渲染

    gitHub地址:https://github.com/lily1010/vue_learn/tree/master/lesson08 一 v-if显示单个元素 注意else只能跟在v-if或者v-s ...

  5. vue 数组渲染问题

    vue 数组渲染问题 问题一: 用v-for循环渲染数组数据时,数据更新了,视图却没有更新 由于 JavaScript 的限制, Vue 不能检测以下变动的数组: 1. 当你利用索引直接设置一个项时, ...

  6. vue 避免渲染时闪烁

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  7. 二、Vue 页面渲染过程

    前言 上篇博文我们依葫芦画瓢已经将hello world 展现在界面上啦,但是是不是感觉新虚虚的,总觉得这么多文件,项目怎么就启动起来了呢?怎么访问到8080 端口就能进入到我们的首页呢.整个的流程是 ...

  8. vue 动态渲染数据很慢或不渲染

    vue 动态渲染数据很慢或不渲染 原因是因为vue检测速度很慢,因为多层循环了,在VUE 2.x的时候还能渲染出来,1.x的时候压根渲染不出来.解决方式:在动态改变数据的方法,第一行加上 this.$ ...

  9. vue render 渲染函数

    vue render 渲染函数 经常看到使用render渲染函数的示例,而且在一些特殊情况下,确实更好使用,可以更加有效地细分组件,因而借助vue-element-admin来学习一波 render函 ...

随机推荐

  1. python列表表达式

    [expression for i in iterable if condition] expression 就是对每一个元素的具体操作表达式;iterable是某个可迭代对象,如列表,元组或字符串等 ...

  2. JavaFX桌面应用-SpringBoot + JavaFX

    SpringBoot对于Java程序员来说可以是一个福音,它让程序员在开发的时候,大大简化了各种spring的xml配置. 那么在JavaFX项目使用SpringBoot会是怎么样的体验呢? 这次使用 ...

  3. 区块链入门到实战(30)之Solidity – 基础语法

    一个 Solidity 源文件可以包含任意数量的合约定义.import指令和pragma指令. 让我们从一个简单的 Solidity 源程序开始.下面是一个 Solidity 源文件的例子: prag ...

  4. 02 . Go开发一个日志收集平台之Context及etcd简单使用

    Context简单使用 context设置,获取value值 应用于全局通用参数传递 package main import ( "context" "fmt" ...

  5. 方法在class文件中的存在形式MethodInfo

    一个方法对由一个method_info结构所定义.一个class文件中,不会同时出现两个方法同时有相同的名称和描述符 method_info结构如下 参考Field 代码实现 public class ...

  6. APP重构之路:引入单元测试

    一.为什么要引入单元测试 在开发过程中我们会遇到这样一些问题: 面对需要重构庞大的模块代码时无从下手 修改了一处地方却在另一处地方引发了新的bug 扩展新功能的同时导致旧代码出现bug 在测试人员难以 ...

  7. 复杂一点的SQL语句:Oracle DDL和DML

    DDL:对表或者表的属性进行了改变 create:创建表创建用户创建视图 创建表 create table student(id int,score int) ; student后面与括号之间可以有空 ...

  8. 关于移动端的文本框获取焦点时导致fixed或absolute定位的按钮被手机键盘顶上去的问题

    var win_h = $(window).height();//关键代码 window.addEventListener('resize', function () { if($(window).h ...

  9. PyTorch ResNet 使用与源码解析

    本章代码:https://github.com/zhangxiann/PyTorch_Practice/blob/master/lesson8/resnet_inference.py 这篇文章首先会简 ...

  10. Avtiviti工作流规范 BPM与BPMN

    进过长时间的轮转,重拾Activiti,因为最近在智联上看到多家公司的需求上写的,都要熟悉工作流引擎,也就是activiti所以重拾 之前看的视屏是activiti5,我觉得版本有点低,所以打算看一下 ...