Vue 本地应用 记事本 v-on v-model v-for使用

新增功能


vue当中如何生成列表结构?使用的指令是v-for,同时要有一个可以生成列表的数据,常用的是数组。记事本里面的内容并不复杂,所以这里使用字符串数组就行了。

获取用户输入的内容使用绑定v-model,双向数据绑定(可以将表单的内容和data当中的数据关联起来,可以非常方便的设置和取值)。这个指令的使用需要在data当中定义绑定的数据,接着将这个指令设置给相应的表单元素就可以了。

回车的时候新增数据,事件绑定v-on,使用回车键那么就是enter。

根据数组生成列表的结构,获取用户输入的内容(其实就是使用v-model进行双向数据绑定)。

javascript 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>首页</title>
    <link href="" type="text/css" rel="stylesheet"/>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <style type="text/css">
    </style>
</head>

<body>    
    <div id="vue">
        <input type="text" v-model="inputvalue" @keyup.enter="add()">
       <ul >
        <li  v-for="(item,index) in list">{{ index +1 }}.  {{ item }}</li>
       </ul>
    </div>

    <script type="text/javascript">
      new Vue({   
          el: "#vue",   
          data:{ 
             list: ["写代码","吃饭饭","睡觉觉","打游戏"],
             inputvalue: "好好学习"
          },
          methods:{  
            add:function(){
                this.list.push(
                    this.inputvalue
                )
            }
       }
    }
)

    </script>

</body>

</html>

删除


splice可以通过对应的下标来删除指定的元素。这里通过形参的方式传递给函数。

javascript 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>首页</title>
    <link href="" type="text/css" rel="stylesheet"/>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <style type="text/css">
    </style>
</head>

<body>    
    <div id="vue">
        <input type="text" v-model="inputvalue" @keyup.enter="add()"> <br>
        <input type="text" v-model="arrindex" @keyup.enter="remove(arrindex)">
       <ul >
        <li  v-for="(item,index) in list" @click="remove(index)">{{ index +1 }}.  {{ item }}</li>
       </ul>
    </div>

    <script type="text/javascript">
      new Vue({   
          el: "#vue",   
          data:{ 
             list: ["写代码","吃饭饭","睡觉觉","打游戏"],
             inputvalue: "好好学习",
             arrindex: 1
          },
          methods:{  
            add:function(){
                this.list.push(
                    this.inputvalue
                )
            },
            remove:function(arrindex){
               console.log(arrindex);
               //第一个是索引,第二个参数是一次性删除几个
               this.list.splice(arrindex,1)
            }
       }
    }
)

    </script>

</body>

</html>
相关推荐
小彭努力中3 小时前
191.Vue3 + OpenLayers 实战:可控化版权信息(Attribution)详解与完整示例
前端·javascript·vue.js·#地图开发·#cesium
发现一只大呆瓜3 小时前
Vue-Vue2与Vue3核心差异与进化
前端·vue.js·面试
发现一只大呆瓜4 小时前
Vue2:数组/对象操作避坑大全
前端·vue.js·面试
发现一只大呆瓜4 小时前
Vue3:ref 与 reactive 超全对比
前端·vue.js·面试
程序猿大波5 小时前
基于java,SpringBoot和Vue餐饮公司食堂管理系统设计
java·vue.js·spring boot
前端小趴菜056 小时前
vue3项目优化方案
前端·javascript·vue.js
Irene19917 小时前
对比总结:Vue3中的 watch 和 Pinia中的 $subscribe
vue.js·pinia·watch·subscribe
Luna-player7 小时前
gitee上的vue项目,刚刚创建了一个分支,怎么在本地上拉取分支项目
前端·vue.js·gitee
徐小夕7 小时前
借助AI,1周,0后端成本,我开源了一款Office预览SDK
前端·vue.js·github
还是大剑师兰特7 小时前
Vue3 按钮切换示例(启动 / 关闭互斥显示)
开发语言·javascript·vue.js