VUE中v-model和v-for指令详解

发布时间 - 2026-01-11 02:01:41    点击率:

1.基本雏形

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!'
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    {{msg}}
  </div>
</body>
</html>

需要new一个Vue实例,实例化的时候传入了一个对象{el:'#box',data:{msg:'Hello Vue!'}}。这个意思是:Vue这个只控制id="box"这个DIV元素,同时在 HTML模板上使用双花括号{{xxxx}}语法,来访问data中定义的数据。

上面代码我们new处理一个Vue的实例,并赋值给了vm变量,通过这个vm变量,我们也可以访问其中定义的数据:

      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!'
        }
      });

      console.log(vm.msg); //'Hello Vue!'

2.v-model指令

所谓的“指令”其实就是扩展了HTML标签功能(属性)。

v-model的双向数据绑定

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!'
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    <input type="text" v-model="msg"/><br/>
    {{msg}} 
  </div>
</body>
</html>

通过v-model 指令,我们把msg 数据绑定到了input文本框,我们修改文本框的值,发现msg 数据改变了。

注意:如果我们定义的数据是数组或者json,在模板上会怎样显示出来呢?

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!',
          arr:['apple','banana','orange'],
          json:{a:'apple',b:'banana'}
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    <input type="text" v-model="msg"/><br/>
    {{msg}} <br/>
    {{arr}} <br/>
    {{json}}

  </div>
</body>
</html>

数组和json都被当作字符串输出了,显然这不是我们理想的效果。

 

3.v-for指令

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <meta charset="utf-8">
  <script src="http://unpkg.com/vue/dist/vue.js"></script>

  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          arr:['apple','banana','orange'],
          json:{a:'apple',b:'banana'}
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    <p>循环数组</p>
    <ul>
      <li v-for="a in arr">
      {{a}}
      </li>
    </ul>
    <hr>
    <p>循环出数组索引</p>
    <ul>
      <li v-for="(v,k) in arr">
      {{v}}==>{{k}}
    </ul>
    <p>循环json</p>
    <ul>
      <li v-for="item in json">{{item}}</li>
    </ul>
    <p>循环json的键</p>
    <ul>
      <li v-for="(k,v) in json">
      {{k}}==>{{v}}
      </li>
    </ul>
  </div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue  # v  # for  # model  # vue中 v-for循环的用法详解  # Vue.js常用指令汇总(v-if、v-for等)  # 浅谈vue.js中v-for循环渲染  # vue.js指令v-for使用及索引获取  # 使用vue中的v-for遍历二维数组的方法  # Vue中v-for的9种使用案例总结大全  # 绑定  # 文本框  # 给了  # 这不是  # 上会  # 大家多多  # 改变了  # 来访问  # box  # el  # type  # onload  # data  # js  # text  # vm  # var  # function  # javascript  # window 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 详解Android中Activity的四大启动模式实验简述  ,怎么在广州志愿者网站注册?  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  PythonWeb开发入门教程_Flask快速构建Web应用  如何在云指建站中生成FTP站点?  英语简历制作免费网站推荐,如何将简历翻译成英文?  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  Laravel如何使用Vite进行前端资源打包?(配置示例)  如何用美橙互联一键搭建多站合一网站?  制作企业网站建设方案,怎样建设一个公司网站?  如何将凡科建站内容保存为本地文件?  个人网站制作流程图片大全,个人网站如何注销?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  新三国志曹操传主线渭水交兵攻略  香港服务器如何优化才能显著提升网站加载速度?  如何用低价快速搭建高质量网站?  JS碰撞运动实现方法详解  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  如何快速生成凡客建站的专业级图册?  网站制作大概多少钱一个,做一个平台网站大概多少钱?  如何在万网自助建站中设置域名及备案?  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  如何快速搭建个人网站并优化SEO?  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  Laravel如何配置和使用缓存?(Redis代码示例)  Laravel如何发送系统通知?(Notification渠道示例)  bootstrap日历插件datetimepicker使用方法  HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  Laravel如何为API编写文档_Laravel API文档生成与维护方法  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  用v-html解决Vue.js渲染中html标签不被解析的问题  活动邀请函制作网站有哪些,活动邀请函文案?  Laravel怎么在Controller之外的地方验证数据  javascript中对象的定义、使用以及对象和原型链操作小结  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  Laravel如何自定义分页视图?(Pagination示例)  Laravel distinct去重查询_Laravel Eloquent去重方法  轻松掌握MySQL函数中的last_insert_id()  EditPlus中的正则表达式 实战(2)  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  如何快速搭建支持数据库操作的智能建站平台?  如何在景安服务器上快速搭建个人网站?  制作公司内部网站有哪些,内网如何建网站?