02.Vue api [v-for、v-on、mustache语法、v-once、v-html、v-text、v-pre、 v-cloak]

v-for

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<div id ="vue">
  <ul>
    <li v-for=" Item in movie">{{Item}}</li>
  </ul>
</div>

<!-- 引入vue.js 文件-->
<script src="../js/vue.js"></script>
<script>

  const app = new Vue({
    // 这个app的变量名,可省略,但是后期需要调用此实例的方法(or属性)时,需要
    el:'#vue',// 用于挂载要管理的元素
    data:{ // 定义数据
      message:'你好!华为',
      movie:['22222','33333','444444','555555']
    }
  });

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

v-on

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<div id ="vue">
  <h2>当前技计数:{{counter}}</h2>
  <button v-on:click="counter++">+</button>
  <button v-on:click="counter--">-</button>
  </ul>
</div>

<!-- 引入vue.js 文件-->
<script src="../js/vue.js"></script>
<script>
  const app = new Vue({
    el:'#vue',
    data:{
      counter:0
    }
  });
</script>
</body>
</html>

把count的计算放到js中后进行计算,我们调用方法

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<div id ="vue">
  <h2>当前技计数:{{counter}}</h2>
  <button v-on:click="add">+</button>
  <button v-on:click="sub">-</button>
  </ul>
</div>

<!-- 引入vue.js 文件-->
<script src="../js/vue.js"></script>
<script>

  const app = new Vue({
    el:'#vue',
    data:{
      counter:0
    },
    methods:{
      add:function (){
        this.counter++;
      },
      sub(){
        this.counter--;
      }
    }
  });

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

mustache语法

<h1>{{message}}</h1>

 mustache语法中,不仅可以直接写变量,也可直接写简单的表达式

<h1>{{message + firstName}}</h1>
<h1>{{message}} +''+ {{firstName}}</h1>

v-once

加上该标签后,只渲染一次,以后数值再改变, 其html的显示也不跟着发生改变

<h2 v-once>{{meassge}}</h2>

v-html 

解析vue实例中的 html元素

 v-text

  <h2>{{sss}}</h2>
  <h2 v-text="sss"></h2>
  // 上述两种效果相同

不推荐使用,因为这个 v-text 会相对mustache语法会比较缺少灵活,不能拼接

还有就是在bbb的值会覆盖v-text 的变量值

  <h2 v-text="sss">{{bbb}}</h2>

 v-pre

  <h2 v-pre>{{message}}</h2>

会原封不动的解析出来

 v-cloak

加上这个标签,防止数据没有渲染完,而导致会让用户提前看到未渲染成功的{{sss}}

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>

  <style>
    [v-clocl]{
        display: none;
    }
  </style>
</head>
<body>

<div id ="vue">
  <h2 v-cloak>{{sss}}</h2>
</div>

<!-- 引入vue.js 文件-->
<script src="../js/vue.js"></script>
<script>

  const app = new Vue({
    el:'#vue',
    data:{
      counter:' <a href="http://www.baidu.com">百度一下</a>',
      sss:'jiangjiang'
    },
  });

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue.js是一种流行的JavaScript框架,可以帮助我们构建动态的Web应用程序。使用Vue.js的v-for指令,我们可以轻松地在HTML模板中渲染JSON数组对象列表数据。 假设我们有一个JSON数组对象,包含多个学生的信息,每个学生有姓名和年龄两个属性。我们想通过Vue.js的v-for指令,将这些学生的信息批量渲染到页面上。 首先,在Vue.js中,需要定义一个data对象来存储我们的数据。我们可以在data对象中定义一个students属性,其值为我们的JSON数组对象。 接下来,在HTML模板中,我们可以使用v-for指令来遍历这个JSON数组对象。具体来说,我们可以在一个div容器上使用v-for指令,并使用"student in students"语法来进行遍历。这样,vue.js会自动将每个学生的信息渲染到页面上。 最后,我们可以在v-for指令的内部使用{{ }}语法来显示学生的具体信息。其中,使用{{ student.name }}和{{ student.age }}来分别显示学生的姓名和年龄。 整个过程可以通过下面的代码示例来实现: ```html <div id="app"> <div v-for="student in students"> <p>姓名:{{ student.name }}</p> <p>年龄:{{ student.age }}</p> </div> </div> <script> new Vue({ el: '#app', data: { students: [ { name: '小明', age: 18 }, { name: '小红', age: 19 }, { name: '小亮', age: 20 } ] } }) </script> ``` 以上就是一个基于v-for指令实现批量渲染JSON数组对象列表数据的示例。通过这个示例,我们可以看到Vue.js提供了非常方便的数据驱动视图的方式,使得我们可以轻松地渲染和更新大量的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值