当前位置: 首页 > article >正文

Vue 响应式渲染 - 模板语法

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 响应式渲染 - 模板语法

目录

模板语法

渲染变量(状态)

绑定事件

简写

事件修改属性

样式修改

绑定图片路径

动态显示和隐藏

总结


模板语法

渲染变量(状态)

在页面中直接渲染变量。

示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../lib/vue.js"></script>
</head>
<body>
<div id="box">
    {
  
  {myname}}
</div>
<script>
    new Vue({
        el: "#box", // element
        data: {
            myname: '我的名字是张三'
        }
    })
</script>
</body>
</html>

 

绑定事件

增加按钮,并对按钮绑定点击事件。

示例如下:

<div id="box">
    {
  
  {myname}}
    <button @click="clickHandle()">button</button>
</div>
<script>
    new Vue({
        el: "#box", // element
        data: {
            myname: '我的名字是张三'
        },
        methods:{
            clickHandle:function () {
                console.log('点击了按钮')
            }
        }
    })
</script>

简写

对绑定事件语法进行简写。

示例如下:

<script>
    new Vue({
        el: "#box", // element
        data: {
            myname: '我的名字是张三'
        },
        methods:{
            clickHandle() {
                console.log('点击了按钮')
            }
        }
    })
</script>

事件修改属性

通过绑定的事件来修改属性值。

示例如下:

methods:{
    clickHandle() {
        console.log('点击了按钮')
        this.myname = '我的名字是李四'
    }
}

样式修改

首先设置类样式,然后在div上绑定一个状态,

之后通过动态改变状态值来进行样式修改。

示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .title {
            font-weight: bold;
            color: red;
        }

        .normal {
            font-weight: normal;
            color: #000;
        }
    </style>
    <script src="../lib/vue.js"></script>
</head>
<body>
<div id="box">
    {
  
  {myname}}
    <button @click="clickHandle()">button</button>
    <div :class="divClass">动态切换class</div>
</div>
<script>
    new Vue({
        el: "#box", // element
        data: {
            myname: '我的名字是张三',
            divClass: 'normal'
        },
        methods: {
            clickHandle() {
                console.log('点击了按钮')
                this.myname = '我的名字是李四'
                this.divClass = 'title'
            }
        }
    })
</script>
</body>
</html>

绑定图片路径

对图片路径进行动态绑定,在点击按钮事件中赋值图片路径。

示例如下:

<div id="box">
    {
  
  {myname}}
    <button @click="clickHandle()">button</button>
    <div :class="divClass">动态切换class</div>
    <img :src="imgVal" alt="">
</div>
<script>
    new Vue({
        el: "#box", // element
        data: {
            myname: '我的名字是张三',
            divClass: 'normal',
            imgVal: ''
        },
        methods: {
            clickHandle() {
                console.log('点击了按钮')
                this.myname = '我的名字是李四'
                this.divClass = 'title'
                this.imgVal = 'http://www.suicao.com/d/file/2017-04-22/2c2e18007fed6bdd371e86b721f8b119.jpg'
            }
        }
    })
</script>

动态显示和隐藏

通过对div类进行动态绑定后,使用三目运算法来判断状态值来进行是否显示与隐藏。

点击按钮动态改变设置的状态值。

示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .hide {
            display: none;
        }
    </style>
    <script src="../lib/vue.js"></script>
</head>
<body>
<div id="box">
    <button @click="clickHandle()">button</button>
    <div :class=" isHide?'hide':'' ">动态显示和隐藏</div>
</div>
<script>
    new Vue({
        el: "#box", // element
        data: {
            isHide:false
        },
        methods: {
            clickHandle() {
                console.log('点击了按钮')
                this.isHide = !this.isHide
            }
        }
    })
</script>
</body>
</html>

总结

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 响应式渲染 - 模板语法


http://www.kler.cn/a/519626.html

相关文章:

  • ubuntu22安装issac gym记录
  • 汽车OEMs一般出于什么目的来自定义Autosar CP一些内容
  • 景联文科技加入AIIA联盟数据标注分委会
  • Windows 靶机常见服务、端口及枚举工具与方法全解析:SMB、LDAP、NFS、RDP、WinRM、DNS
  • IoTDB 2025 春节值班与祝福
  • Linux的常用指令的用法
  • BroadCom-RDMA博通网卡如何进行驱动安装和设置使得对应网口具有RDMA功能以适配RDMA相机
  • 如何实现一个简单的中文错别字高亮系统?
  • 使用python-docx包进行多文件word文字、字符批量替换
  • 【数据分享】1929-2024年全球站点的逐日降水量数据(Shp\Excel格式)
  • springboot使用tomcat浅析
  • 【全栈】SprintBoot+vue3迷你商城(7)
  • 从入门到精通:HttpClient深度剖析与实战指南
  • SpringBoot--基本使用(配置、整合SpringMVC、Druid、Mybatis、基础特性)
  • Maven的继承与聚合特性:大型项目管理的利器
  • 【Linux笔记】Day5
  • Vue 3 30天精进之旅:Day 04 - 计算属性与侦听器
  • Labview替代平台ATECLOUD的兼容性如何?
  • Docker常用知识点问题
  • K8S中的数据存储之基本存储
  • 共同建设:GAEA 社区如何塑造 AI 的未来
  • 2024年度总结(具身智能赛道,欢迎交流)
  • Mysql 默认隔离级别分布式锁乐观锁
  • JAVAweb学习日记(八) 请数据库模型MySQL
  • ray.rllib-入门实践-11: 自定义模型/网络
  • 第22章 走进xUnit:测试驱动开发的关键工具(持续探索)