🌵Vue本地应用(列表循环,表单元素绑定)

简介: 🌵Vue本地应用(列表循环,表单元素绑定)

1.v-for指令


根据数据生成列表结构


语法:


<div id="app">
        <ul>
            <li v-for="(item,index)in arr">
                {{index}}{{item}}
            </li>
            <li v-for ="{{item,index}} in objArr">
                {{item.name}}
            </li>
        </ul>
    </div>
复制代码
var app = new Vue({
            el:"#app",
            data:{
                arr:[1,2,3,4,5],
                objArr:[
                    {name:"jack"},
                    {name:"rose"}
                ]
            }
        })
复制代码


3a77e8dabbac43648655fde8f604289d_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.gif


// 源码:
<body>
    <div id="app">
        <input type="button" value="增加数据" @click="add">
        <input type="button" value="移除数据" @click="remove">
        <ul>
            <li v-for="(item,index) in arr">{{index+1}}四大名著是{{item}}</li>
        </ul>
        <h2 v-for="item in person" :title="item.name">{{item.name}}</h2>
    </div>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                arr: ["西游记", "三国演义", "水浒传", "红楼梦"],
                person: [
                    { name: "孙悟空" },
                    { name: "猪八戒" },
                    { name: "沙和尚" }
                ]
            },
            methods: {
                add: function () {
                    this.person.push({ name: "唐僧" })
                },
                remove: function () {
                    this.person.shift()
                }
            }
        })
    </script>
</body>


总结:


  • v-for指令的作用是:根据数据生成列表结构。
  • 数组经常和v-for指令结合使用。
  • 语法是(item,index)in数据。
  • item和index可以结合其他指令一起使用。
  • 数组长度的更新会同步到页面上,是响应式的。


2.v-on补充


传递自定义参数,事件修饰符


语法:


<div id="app">
        <input type="button" @click="doIt(p1,p2)">
        <input type="button" @keyup.enter="sayHi">
    </div>
复制代码


var app =new Vue({
            el:"#app",
            data:{
            },
            methods:{
                doIt:function(p1,p2){},
                sayHi:function(){}
            }
        })
复制代码


8e3b0aef47d94ca4bb4be6fcdc1d6edd_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


// 源码
<body>
    <div id="app">
        <input type="button" value="传递参数" @click="doIt('老铁',666)">
        <input type="text" @keyup.enter="sayHi">
    </div>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
            },
            methods: {
                doIt: function (p1, p2) {
                    alert(p1);
                    alert(p2)
                },
                sayHi: function () {
                    alert("Hello")
                }
            }
        })
    </script>
</body>
复制代码


总结:


事件绑定的方法写成函数调用的形式,可以传入自定义参数。

定义方法的时候需要定义形参来接受传入的实参。

事件的后面跟上.修饰符可以对事件进行限制。

.enter可以限制触发事件的按键为回车。


3.v-model指令


获取和设置表单元素的值(双向数据绑定)


语法:


<div id="app">
        <input type="text" v-model="message" />
    </div>
复制代码


var app = new Vue({
            el: "#app",
            data: {
                message: "前端人永不言弃"
            }
        })
复制代码


这里数据是双向绑定的哦!

4d816d26c130452196b6503b5169e918_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


c37e38e71cd040a0aa3ce01ad05c2e82_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.gif

总结:


v-moel指令的作用是便捷的设置和获取表单元素的值。

绑定元素的值会和表单元素的值相关联。

绑定数据和表单元素的值是双向绑定的。

相关文章
|
3月前
|
缓存 前端开发 大数据
虚拟列表在Vue3中的具体应用场景有哪些?
虚拟列表在 Vue3 中通过仅渲染可视区域内容,显著提升大数据列表性能,适用于 ERP 表格、聊天界面、社交媒体、阅读器、日历及树形结构等场景,结合 `vue-virtual-scroller` 等工具可实现高效滚动与交互体验。
428 1
|
5月前
|
JavaScript API 开发者
Vue框架中常见指令的应用概述。
通过以上的详细解析,你应该已经初窥Vue.js的指令的威力了。它们是Vue声明式编程模型的核心之一,无论是构建简单的静态网站还是复杂的单页面应用,你都会经常用到。记住,尽管Vue提供了大量预定义的指令,你还可以创建自定义指令以满足特定的需求。为你的Vue应用程序加上这些功能增强器,让编码变得更轻松、更愉快吧!
119 1
|
9月前
|
JavaScript 前端开发 开发者
Vue中的class和style绑定
在 Vue 中,class 和 style 绑定是基于数据驱动视图的强大功能。通过 class 绑定,可以动态更新元素的 class 属性,支持对象和数组语法,适用于普通元素和组件。style 绑定则允许以对象或数组形式动态设置内联样式,Vue 会根据数据变化自动更新 DOM。
|
10月前
|
缓存 NoSQL JavaScript
Vue.js应用结合Redis数据库:实践与优化
将Vue.js应用与Redis结合,可以实现高效的数据管理和快速响应的用户体验。通过合理的实践步骤和优化策略,可以充分发挥两者的优势,提高应用的性能和可靠性。希望本文能为您在实际开发中提供有价值的参考。
255 11
|
10月前
|
存储 设计模式 JavaScript
Vue 组件化开发:构建高质量应用的核心
本文深入探讨了 Vue.js 组件化开发的核心概念与最佳实践。
756 1
|
10月前
|
JavaScript 前端开发
【Vue.js】监听器功能(EventListener)的实际应用【合集】
而此次问题的核心就在于,Vue实例化的时机过早,在其所依赖的DOM结构尚未完整构建完成时就已启动挂载流程,从而导致无法找到对应的DOM元素,最终致使计算器功能出现异常,输出框错误地显示“{{current}}”,并且按钮的交互功能也完全丧失响应。为了让代码结构更为清晰,便于后续的维护与管理工作,我打算把HTML文件中标签内的JavaScript代码迁移到外部的JS文件里,随后在HTML文件中对其进行引用。
156 8
|
2月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
301 2
|
1月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
280 137
|
5月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
777 0
|
5月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能