Vue列表展示计数器【第二篇】

news2025/2/27 11:17:58

🌱 1、vue列表展示案例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vueDemo02列表展示</title>
</head>
<body>
<div id="xy">
    <!--原始展示方式-->
   <!-- <ul>
        <li>{{bookList[0]}}</li>
        <li>{{bookList[1]}}</li>
        <li>{{bookList[2]}}</li>
    </ul>-->
    <!--v-for: 遍历-->
    <ul>
        <!--声明式-->
        <li v-for="item in bookList">{{item}}</li>
    </ul>
</div>
<!--引入vue.js文件-->
<script src="../js/vue.js"></script>
<script>
    const xy = new Vue({
        el: '#xy',  //用于挂载要管理的元素
        data:{
            bookList:['活着','朝花夕拾','追风筝的人']
        }
    })
</script>

</body>
</html>

原始式代码解析:

     🍊  需要先创建一个ul,然后再将ul追加到div中,然后再根据数组中的数据创建相应的li

     🍊  缺点:如果数组中有很多条数据,那么我们就需要在<ul>标签中写很多个

            <li>{{bookList[...]}}</li>,这样代码就过于冗余了

声明式代码解析: <li v-for="item in bookList">{{item}}</li>

      🍋 使用v-for就相当于将数据一个一个取出来进行遍历,第一次取出来'活着',赋给item,以此类推;

      🍋 此外这个数据是响应式的,也就是说:当我们数组中的数据发生改变是,界面会自动改变。 若我想在bookList数组里追加一个数据,在浏览器的控制台(Console)打印 xy.bookList.push('新青年')

🍓 拓展:

        注意:data在组件开发中的写法必须是函数。

       data属性既可以是一个json对象也可以是一个函数,如:

const xy = new Vue({
    el: '#xy',
    data: function(){
        return {
            msg: 'hello vue',
            ts: new Date().getTime()  //当前时间
        }
    }
});

🌱 2、vue绑定事件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vueBinding03绑定事件</title>
</head>
<body>
<div id="xy">
    <h2>{{msg}}</h2>
    <!-- v-on:  vue绑定事件的处理函数的方式 -->
    <button v-on:click="click()">点我试试</button>
</div>
<!--引入vue.js文件-->
<script src="../js/vue.js"></script>
<script>
    const xy = new Vue({
        //指定vue实例的管理区域,也叫边界
        el: '#xy',  //用于挂载要管理的元素
        data: function () {
            return{
                msg: '十里春风不如你',
            }
        },
        //定义交互事件
        methods:{
            click: function () {
                //控制台输出
                console.log('我在等风也在等你')
                //页面弹出
                //alert('我在等风也在等你')
            }
        }
    })
</script>
</body>
</html>

 打开开发者工具,点击按钮,在console中查看点击事件的效果。

 效果图展示:

注意: 

  1. 只有当实例被创建时已经在data中存在的属性才是响应式的
  2. 用v-model指令在表单控件元素上创建双向数据绑定
  3. this在methods属性的方法里指向当前Vue实例,如果需要外部访问可以使用vm.name/vm.$data.name的方式
  4. 用v-once指令进行单向绑定,一般不用
  5. console对象可以使用printf风格的占位符。只支持字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o)四种
  6. Vue实例还暴露了一些有用的实例属性与方法。它们都有前缀$,以便与用户定义的属性区分开来

🌱 3、vue计数器 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vueCounter计数器</title>
</head>
<body>
<div id="app">
    <h3>当前计数:{{counter}}</h3>
    <button v-on:click="counter++">+</button>
    <button v-on:click="counter--">-</button>
</div>
<!--引入vue,即可以使用vue.js中相关的东西了-->
<script src="../js/vue.js"></script>
<script>
    //创建一个vue实例(new Vue在vue.js中定义了),可以有一个参数用于挂载元素
    const app = new Vue({
        el: '#app',  //用于挂载要管理的元素
        data:{       //定义数据
            counter: 0
        },
    })

</script>
</body>
</html>

第二种写法:

<div id="app">
    <h3>当前计数:{{counter}}</h3>
    <button v-on:click="add">+</button>
    <button v-on:click="reduce">-</button>
</div>
<script src="../js/vue.js"></script>
<script>
    const app = new Vue({
        el: '#app',  //用于挂载要管理的元素
        data:{       //定义数据
            counter: 0
        },
        methods:{
            add:function () {
                console.log('当前计数加1')
                //获取当前counter
                this.counter++
            },
            reduce:function () {
                console.log('当前计数减1')
                //获取当前counter
                this.counter--
            }
        }
    })
</script>

第三种写法:

<div id="app">
    <h3>当前计数:{{counter}}</h3>
    <button @click="add">+</button>
    <button @click="reduce">-</button>
</div>
<script src="../js/vue.js"></script>
<script>
    const app = new Vue({
        el: '#app',  //用于挂载要管理的元素
        data:{       //定义数据
            counter: 0
        },
        methods:{
            add(){
                console.log('add当前计数加1')
                this.counter++
            },
            reduce(){
                console.log('reduce当前计数减1')
                this.counter--
            }
        }
    })
</script>

效果展示:

 解释说明:

        @click是v-on:click 它的一个语法糖,一种简写

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/520523.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023最新CleanMyMac中文版系统清理优化工具

CleanMyMac中文版功能非常的强大&#xff0c;操作简单&#xff0c;使用起来高效快捷&#xff0c;软件自身拥有一个安全数据&#xff0c;且拥有一定的规格&#xff0c;CleanMyMac中文版能够确定软件能够正确选择和清理Mac垃圾文件&#xff0c;更加安全&#xff0c;可靠。一键快速…

thinkPhP6.0安装教程图解--PHP框架安装

ThinkPhP 6.0 安装 1.环境检查 首先&#xff0c;thinkphp6.0&#xff0c;要求php的环境是7.2.5及以上的&#xff0c;所以先检查自己的php环境是否符合要求。 在cmd命令窗口中输入php -v 或者没有配置环境变量的话&#xff0c;可以在php编辑器中输出php_info()或则PHP_VERSIO…

记录一次异常:feign异常--NoSuchBeanDefinitionException: No qualifying bean of type

1、完整报错 2023-06-29 16:17:28.127 WARN 3732 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyExcep…

JetCache 使用简单案例到源码解析读这一篇就够

背景 github.com/alibaba/jet… 一、使用方法&#xff1a; 1. 创建项目— 此处使用springboot项目 2. 引入starter <dependency> <groupId>com.alicp.jetcache</groupId> <artifactId>jetcache-starter-redis</artifactId><version>2…

Servlet3.0 新特性全解

Servlet3.0新特性全解 tomcat 7以上的版本都支持Servlet 3.0 Servlet 3.0 新增特性 注解支持&#xff1b;Servlet、Filter、Listener无需在web.xml中进行配置&#xff0c;可以通过对应注解进行配置&#xff1b;支持Web模块&#xff1b;Servlet异步处理&#xff1b;文件上传AP…

DEV SIT UAT PET SIM PRD PROD常见环境英文缩写含义

一、英文缩写 英文中文 DEV development开发 SIT System Integrate Test系统整合测试&#xff08;内测&#xff09; UAT User Acceptance Test用户验收测试 PET Performance Evaluation Test性能评估测试&#xff08;压测&#xff09; SIM simulation仿真 PRD/PROD produ…

我们花一个月调研了小红书种草的新机会和增长策略

分析师&#xff1a;Jane、彬超 编辑&#xff1a;yolo 出品&#xff1a;增长黑盒研究组 *本报告为增长黑盒独立研究系列&#xff0c; 与第三方不存在任何利益关系 随着618的临近&#xff0c;小红书再次成为了品牌重要的“营销战场”。面临着经济环境的不确定性&#xff0c;想必各…

数据结构_串

目录 1. 串的定义和实现 1.1 串的定义 1.2 串的存储结构 1.2.1 定长顺序存储表示 1.2.2 堆分配存储表示 1.2.3 块链存储表示 1.3 串的基本操作 2. 串的模式匹配 2.1 简单的模式匹配算法 2.2 串的模式匹配算法——KMP算法 2.2.1 字符串的前缀、后缀和部分匹配值 2.2…

你不知道的裁员攻略:真正的离职赔偿是2N起步,不是N+1!计算赔偿金时,年终奖要计入总收入!...

最近裁员现象猖獗&#xff0c;许多人都不知道如何维护自己的合法权益&#xff0c;在和公司撕扯时屡屡被坑。一位曾经和字节撕过且成功的网友&#xff0c;友情给大家写了一份离职攻略。但要注意&#xff0c;这份攻略只针对那些守规矩的大公司&#xff0c;如果是不守规矩的小公司…

得ChatGPT者,得智能客服天下?

‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 在现代社会&#xff0c;高效、专业的客服服务已成为企业、组织机构竞争力的关键要素。智能客服系统应运而生&#xff0c;智能客服系统对客服的赋能作用和价值主要表现在提高效率、降低成本、优化用户体验、深度挖掘用户需求…

【综述】结构化剪枝

目录 摘要 分类 1、依赖权重 2、基于激活函数 3、正则化 3.1 BN参数正则化 3.2 额外参数正则化 3.3 滤波器正则化 4、优化工具 5、动态剪枝 6、神经架构搜索 性能比较 摘要 深度卷积神经网络&#xff08;CNNs&#xff09;的显著性能通常归因于其更深层次和更广泛的架…

QML转换(Transformation)

目录 一 QML介绍 二 QML的使用场合 三 实例演示 一 QML介绍 QML是Qt Quick的缩写&#xff0c;它是一种新型的、面向对象的、跨平台的脚本语言&#xff0c;可以用来描述用户界面或应用程序的交互逻辑。QML可以在Qt应用程序中使用&#xff0c;也可以在其他JavaScript应用程序中…

Python入门(九)字典(二)

字典&#xff08;二&#xff09; 1.遍历字典1.1 遍历所有键值对1.2 遍历字典中的所有键1.3 按特定顺序遍历字典中的所有键 2.嵌套2.1 字典列表2.2 在字典中存储列表2.3 在字典中存储字典 作者&#xff1a;xiou 1.遍历字典 一个Python字典可能只包含几个键值对&#xff0c;也可…

【源码解析】SpringBoot自定义条件及@Conditional源码解析

自定义注解 自定义条件类 public class MessageCondition extends SpringBootCondition {Overridepublic ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) {MultiValueMap<String, Object> attrs metadata.getAllAnnota…

成年人的崩溃只在一瞬间,程序员凌晨三点写的代码竟被女友删了...

对于恋爱中的情侣来说&#xff0c;吵架是很正常的事情&#xff0c;就算是再怎么亲密&#xff0c;也难免会出现意见不合的时候。 吵架不可怕&#xff0c;可怕的是&#xff0c;受吵架情绪的影响&#xff0c;做出一些比较“极端”的事情。 之前某社交平台上一位女生吐槽自己的男…

Ubuntu 本地部署 Stable Diffusion web UI

Ubuntu 本地部署 Stable Diffusion web UI 0. 什么是 Stable Diffusion1. 什么是 Stable Diffusion web UI2. Github 地址3. 安装 Miniconda34. 创建虚拟环境5. 安装 Stable Diffusion web UI6. 启动 Stable Diffusion web UI7. 访问 Stable Diffusion web UI8. 其他 0. 什么是…

我这里取出来的数据(最后边的excel)有点问题,我没有要取性别的数据,但是表里有...

点击上方“Python爬虫与数据挖掘”&#xff0c;进行关注 回复“书籍”即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 上穷碧落下黄泉&#xff0c;两处茫茫皆不见。 大家好&#xff0c;我是皮皮。 一、前言 前几天在Python钻石群【不争】问了一个Python自动化办公的问题&…

PyCharm安装教程,图文教程(超详细)

「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 PyCharm 一、PyCharm下载安装二、Python下载安装三、创建项目四、安装模块1、pip安装2、P…

商城系统商品属性的数据库设计思路

京东商城的数据库是如何搭建的&#xff0c;那么多商品&#xff0c;每种商品的参数各不相同&#xff0c;是怎样设计数据库的&#xff1f; 在提及这种设计思路前&#xff0c;首先得了解数据表可以分为两种结构: 1\横表,也就是我们经常用到的表结构&#xff0c; 2\纵表,这种结构…

ASEMI代理LT8609AJDDM#WTRPBF原装ADI车规级芯片

编辑&#xff1a;ll ASEMI代理LT8609AJDDM#WTRPBF原装ADI车规级芯片 型号&#xff1a;LT8609AJDDM#WTRPBF 品牌&#xff1a;ADI /亚德诺 封装&#xff1a;DFN-10 批号&#xff1a;2023 安装类型&#xff1a;表面贴装型 引脚数量&#xff1a;10 工作温度:-40C~125C 类型…