cncml手绘网

标题: 循环语句 [打印本页]

作者: admin    时间: 2018-7-4 10:56
标题: 循环语句
循环使用 v-for 指令。
v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组并且 site 是数组元素迭代的别名。
v-for 可以绑定数据到数组来渲染一个列表:
v-for 指令
# T9 X8 c% s& m  I) e6 g' ]3 e; {
  1. <div id="app">
    1 O) i' f9 E" W
  2.   <ol>
    6 U5 D: b$ ~3 r# [0 U  b- L$ ~
  3.     <li v-for="site in sites">* S& ]7 Y% H+ O8 S
  4.       {{ site.name }}/ ^; ~$ S9 C4 \% x& @
  5.     </li>
    & L  O2 K1 |0 G* ^- o, [0 P. [0 U5 f
  6.   </ol>
    , r( w5 X" c% z) ^
  7. </div># r, E. o0 g$ N. `- e1 D: C1 K

  8. - E- k4 C* M& i' q/ n" g0 I
  9. <script>
    2 X" |# t: [  z7 R1 r5 x
  10. new Vue({, A$ n. X$ s) d
  11.   el: '#app',
    4 c' \! u! l7 R2 ^, A% J% H
  12.   data: {
    # H& s9 o: ~3 W8 V" @5 L8 G$ i* q0 L
  13.     sites: [
    # i2 u% u! G+ [/ P* C0 f
  14.       { name: 'Runoob' },7 q% ~4 I. k0 ?
  15.       { name: 'Google' },
    2 d& Y+ v9 F1 x0 v8 X
  16.       { name: 'Taobao' }
    , R: A  s; ~9 n8 X$ Y0 Q" J" ]
  17.     ]$ a$ A3 E# |) J* `+ c% O
  18.   }. e" T6 M& r0 E- @" m) C4 v
  19. })
    2 g! F9 D1 l0 }+ {
  20. </script>
复制代码
; V% Y8 _( ~% a$ O1 g" g! B1 A' A0 V
5 V: T. W5 x) Q* n8 _" c
模板中使用 v-for:
v-for
( R7 |/ k1 w' z8 \! {; v4 V" ^
  1. <ul>" M; N9 D- t/ ^( T. P
  2.   <template v-for="site in sites">
    1 o* P: C2 P8 t9 H5 r8 U3 K
  3.     <li>{{ site.name }}</li>
    3 W" U; y) ~4 Q, f" Q- n
  4.     <li>--------------</li>
      l" }) q) O6 [) d
  5.   </template>0 v* P, E! z! _9 V' d" a
  6. </ul>
复制代码
v-for 迭代对象
v-for 可以通过一个对象的属性来迭代数据:
v-for4 J6 }, v7 O( D/ S2 p
  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;">
    7 Z1 A$ S8 r! S: L: F+ \- [
  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;">
    / c2 X# O) S7 G9 f! p
  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;">
    # w, }9 `9 B' z4 z4 r0 t" X9 |1 P
  4.     {{ value }}
    3 _3 T; V/ d; x' ]) \& a- c4 @% G
  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;">6 q: l* e* E  ~
  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 y3 }0 p. t% U3 L0 s8 s* Q3 U6 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;">" s* W" u* e) r% S9 T0 X
  8. $ m. X0 `' M- T9 e% X* {; d' u
  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;">
    - @+ z( I& `( {. n. ~% d# H/ f
  10. new Vue({
    " L  Y+ J% D( v( l/ w
  11.   el: '#app',' `: B  h" l) N! B3 p
  12.   data: {
    : s$ c+ [4 `5 D: ~
  13.     object: {
    9 i$ h1 E3 R* z
  14.       name: '菜鸟教程',- V. T/ l3 b. P4 }0 C
  15.       url: 'http://www.runoob.com',' k- J) T  B( E8 p1 L* I8 ~
  16.       slogan: '学的不仅是技术,更是梦想!'
    ! w% H$ e& V6 f! U+ @
  17.     }
    ) Z- q/ ~' s9 q" r. D! V5 P& g& s
  18.   }
    2 W* w! q$ `! y
  19. })! O+ P/ i1 o: K' }: c+ a
  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- R5 D, D* M- f
3 f% J9 I* p' @. j9 C
  1. <div id="app">5 ]9 j0 T( M0 M$ }  ]
  2.   <ul>
    ! _# l; \& R7 @3 ]6 T4 |$ _: B
  3.     <li v-for="(value, key) in object">
    ( Y: @# K0 t; A& _" c  n& y6 @
  4.     {{ key }} : {{ value }}
    ; S! P, \+ R2 ^
  5.     </li>8 R$ G7 N9 y5 }3 v
  6.   </ul>3 Q% O" `- K" b  g9 x! G- @: j
  7. </div>
复制代码
第三个参数为索引:
v-for% ^# p# Y, _+ @" v
( b( s* T* G( b" B3 b
  1. <div id="app">! s7 W. }0 D3 B, H( \+ o7 Q8 j& i
  2.   <ul>6 b% _3 `0 k& j. Q
  3.     <li v-for="(value, key, index) in object">
    " X0 G. R) k: r0 c( i# ~
  4.      {{ index }}. {{ key }} : {{ value }}
    ) \0 F- ~9 c6 K5 {; ]
  5.     </li>) z) M. w5 A9 z1 f
  6.   </ul>
    8 A" P+ I* h0 j0 h+ W
  7. </div>
复制代码
v-for 迭代整数
v-for 也可以循环整数
v-for
( S) H9 b% b& n3 C1 w1 F' @1 S" K, `0 b# B. q/ W& S% a
  1. <div id="app">
    ; r+ [& K+ L& y1 H3 N5 R
  2.   <ul>
    $ D9 j; {# o; H" {& B  X& _9 [, q
  3.     <li v-for="n in 10">
    9 C0 G0 M4 ~! Q' S  A' ]5 z; q
  4.      {{ n }}
    ' I7 W  P5 ?0 b* n1 o4 @
  5.     </li>
    ; ?1 u9 n' A  y, Z2 r8 Z
  6.   </ul>
    + U9 Q7 @. C1 Q$ |1 |, x" }+ a
  7. </div>
复制代码
- u9 s2 Q# I% Q+ \8 o

9 ?' P8 @$ I& |1 L3 P4 l4 z& J/ `. @0 s2 I: r

3 |6 l* y; Y6 s( k9 h4 c




欢迎光临 cncml手绘网 (http://bbs.cncml.com/) Powered by Discuz! X3.2