您尚未登录,请登录后浏览更多内容! 登录 | 立即注册

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 9805|回复: 0
打印 上一主题 下一主题

[Vue.js] 循环语句

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-4 10:56:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
循环使用 v-for 指令。
v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组并且 site 是数组元素迭代的别名。
v-for 可以绑定数据到数组来渲染一个列表:
v-for 指令
7 ]3 ?  H' e# K( U5 o
  1. <div id="app">( o3 Z7 F( J' U; P0 P+ S
  2.   <ol>
    " X2 w) s) _0 c9 k$ B/ g' L- U
  3.     <li v-for="site in sites">; h* `2 |1 L' B* ~( K- f8 V
  4.       {{ site.name }}
    - C6 s1 r. K# H5 f1 r8 X" ?8 C+ d9 g8 ]
  5.     </li>
    / Q$ `* C! w* X7 X" @/ q/ C3 [+ V
  6.   </ol>
    ( x. |) ^( q" ^# ?- r
  7. </div>7 r- ^0 u, g6 ?2 K: B/ l

  8. " A% ^, L- s+ Y& d( r
  9. <script>& J( Q7 R, P: l
  10. new Vue({
    ! @7 f" w2 A8 v
  11.   el: '#app',0 F* t/ a  e4 B+ Z
  12.   data: {
    , W; y5 Y' N: f
  13.     sites: [
      O7 Y+ i" J5 e3 d+ g( ~! U* A
  14.       { name: 'Runoob' }," J' v4 N1 U8 r5 \! P% H# U
  15.       { name: 'Google' },+ P1 _5 Q7 G- f, a4 S# A
  16.       { name: 'Taobao' }
    ) o, ^2 n- ~5 I" k
  17.     ]6 l9 }# l! |+ \) U0 O( ^2 S; g2 t
  18.   }
    ( f( Z  C, a6 i& |8 G. J1 ?5 g1 m
  19. })
    " B2 b9 i, D' a6 O8 M
  20. </script>
复制代码

  u1 X3 g# v& X6 j; U, d8 c0 J8 [$ P8 F2 A) r$ e, b
模板中使用 v-for:
v-for
3 \: b& M" P& ~' t# O/ U0 a- Y
  1. <ul>. p( {0 J4 o  x4 v$ `. A
  2.   <template v-for="site in sites">
    $ T! g# G* a5 S- l# s
  3.     <li>{{ site.name }}</li>
    ' S) ^# @) I0 E+ T7 B# i- H
  4.     <li>--------------</li>3 ]1 v/ i7 g5 p6 f- e3 a# C* P
  5.   </template>
      O# T% _! D* v9 L
  6. </ul>
复制代码
v-for 迭代对象
v-for 可以通过一个对象的属性来迭代数据:
v-for5 P% ?- ^4 k& @2 D% i6 c* k
  1. <div><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"><</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">div</span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"> </span><span class="hl-var" style="border: 0px; color: rgb(0, 0, 139); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">id</span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">=</span><span class="hl-quotes" style="border: 0px; color: rgb(139, 0, 0); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">"</span><span class="hl-string" style="border: 0px; color: rgb(170, 17, 17); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">app</span><span class="hl-quotes" style="border: 0px; color: rgb(139, 0, 0); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">"</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">
    $ `: Y: n  P1 Q
  2.   </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"><</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">ul</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">
    - {" d- R% E0 e- ], y9 a4 N
  3.     </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"><</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">li</span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"> </span><span class="hl-var" style="border: 0px; color: rgb(0, 0, 139); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">v-for</span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">=</span><span class="hl-quotes" style="border: 0px; color: rgb(139, 0, 0); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">"</span><span class="hl-string" style="border: 0px; color: rgb(170, 17, 17); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">value in object</span><span class="hl-quotes" style="border: 0px; color: rgb(139, 0, 0); font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">"</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">2 I: S' W1 ]  X- a# [5 G# b
  4.     {{ value }}  f1 f8 }/ m6 A  a4 Z
  5.     </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"></</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">li</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">
    / Z5 @3 p8 \) |. u# b4 E* V
  6.   </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"></</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">ul</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">
    8 d, w" i! F2 X. l: a) C3 T$ k- v
  7. </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"></</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">div</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">7 z3 G4 S4 l9 E" A% O7 y! g
  8. ' ?) l: I: `! N2 E9 G4 x- Y
  9. </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"><</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">script</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span><span class="hl-code" style="border: 0px; color: gray; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">7 @8 H! ?6 z6 z1 o2 ]0 N/ S
  10. new Vue({
    8 A, @/ U/ a* c. U
  11.   el: '#app',, \4 S7 j+ k5 k$ p2 S! ~
  12.   data: {
    - V/ i. ~" h0 y" d5 q' I& d6 \
  13.     object: {
    $ ]  s6 G8 H$ B$ h/ H4 o
  14.       name: '菜鸟教程',
    " M1 V" N) W  k9 E6 o" z" g) R
  15.       url: 'http://www.runoob.com',
    # _! H4 q% d( B/ f" p+ }9 Z
  16.       slogan: '学的不仅是技术,更是梦想!'
    % r; A' J. Q3 h) a" }6 O& k
  17.     }
    ' ^( ~: W5 a9 _* j% B8 N* ^
  18.   }
    ' o- T$ N1 X) |' O  w" _9 ]( H
  19. })& {8 y1 s  s8 r+ |
  20. </span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;"></</span><span class="hl-reserved" style="border: 0px; color: green; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">script</span><span class="hl-brackets" style="border: 0px; color: olive; font-family: Menlo, Monaco, Consolas, &quot;Andale Mono&quot;, &quot;lucida console&quot;, &quot;Courier New&quot;, monospace; font-size: 13.2px; white-space: pre-wrap;">></span></div><div></div>
复制代码
你也可以提供第二个的参数为键名:
v-for
3 h3 |' p; z  q1 x7 L8 @* {' f) w' U" U9 o/ }3 H2 r
  1. <div id="app">+ Q! A( y9 u' ~$ N% P8 U6 V
  2.   <ul>
    ! L0 t3 H% g7 Z( I9 [/ n4 N$ ~
  3.     <li v-for="(value, key) in object">
    1 ]; U3 D3 |4 ^; K' C1 d
  4.     {{ key }} : {{ value }}
    0 Z3 A. K2 ]: F! }
  5.     </li>, Q6 X! V/ Q: l, G
  6.   </ul>
    * e! f! w, j9 Y2 l! g+ l# }; U' h
  7. </div>
复制代码
第三个参数为索引:
v-for
3 i' A$ l3 P1 Y8 [% Z# I1 e
' O2 [- m) o9 i2 P
  1. <div id="app">
    1 w: i  M* H3 U" @: l6 E
  2.   <ul>
    7 S; X0 {" I4 X, |' n" J, f
  3.     <li v-for="(value, key, index) in object">
    % r2 ~/ S8 P- M
  4.      {{ index }}. {{ key }} : {{ value }}' n8 s  k- x/ A5 S- M
  5.     </li>
    4 f. s8 q- S9 X
  6.   </ul>
    # `8 x6 P8 r5 l' b- J0 q+ ^
  7. </div>
复制代码
v-for 迭代整数
v-for 也可以循环整数
v-for
5 j: c/ X. @% w. |
. q8 A+ a5 r: q% J# J* }; t: d
  1. <div id="app">, i7 ?0 n/ Q1 n" t  r+ D
  2.   <ul>
    ) L0 f3 l& e/ }+ s* D
  3.     <li v-for="n in 10">8 ~9 d' A8 i/ z, P, p
  4.      {{ n }}
    6 C4 K3 c7 b6 W! f4 Z# o- w) n
  5.     </li>
    - S3 N' v7 o& O1 s0 M' r
  6.   </ul>
    1 h5 `; D  _* C
  7. </div>
复制代码
7 U5 p7 K9 X4 E' O

, S5 b% l7 b7 Q" W: s* S  E, ~! J2 R" \& p' \
) Z2 j5 ~1 i$ z; w/ W( |' s
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-1-30 14:27 , Processed in 0.065771 second(s), 19 queries .

Copyright © 2001-2026 Powered by cncml! X3.2. Theme By cncml!