ngRepeatãå®çŸ©ãªã¹ãããã€ïŒãããŠã©ã®ããã«ïŒåŠçãããã«ã€ããŠã®æéæ ã¯ãããŸããïŒ
åé¡ã«ç²ŸéããŠããªãå ŽåïŒçŸåšãngRepeatã¯åäžã®èŠçŽ ã§æ©èœããŸãã ã»ãšãã©ã®HTMLã®å Žåãããã¯æ£åžžã«æ©èœããŸãããã ãã <dl>
ãªã©ã®å®çŸ©ãªã¹ãã®å Žåãããã¯æ©èœããŸããã ã©ãããŠïŒ å®çŸ©ãªã¹ãã¯è€æ°ã®èŠçŽ ã䜿çšããŠåäžã®ãªã¹ãã¢ã€ãã ãå®çŸ©ããããã§ãã
ããŠããããåé¿ããæ¹æ³ã¯è€æ°ãããŸããããããèªããšãAngularãã³ã¡ã³ãã䜿çšããŠç¹°ãè¿ãèŠçŽ ããµããŒãããããšãããããŸãã
ãã®æ©èœããã€å®è£ ããããã«ã€ããŠã®ã¢ã€ãã¢ã¯ãããŸããïŒ ãŸãã¯ãããã«å¯ŸåŠããããã«ããŒãžã§ããããçšåºŠå®å®ãããã©ã³ããããå Žåã¯ã©ããªããŸããïŒ æ¢åã®ãœãªã¥ãŒã·ã§ã³ã¯çŸåšãæšæºã«å¯ŸããŠ_éåžžã«_ããããŒã§ãããIEãªã©ã§ã³ãŒããå£ãåŸåããããŸãã
èãïŒ
ç·šéïŒãããŒãžã§ããå®å®ãããã©ã³ãããšã¯ãã³ãŒããæ£åŒã«ããŒãžããããŸã§ãèªåã®ãµã€ãã§å®è¡ããŠãã®åé¡ã«å¯ŸåŠããããã«ãã©ãŒã¯ã§ãããã©ã³ããæå³ããŸãããèšèé£ããæªãããšããè©«ã³ããŸã:)
第äºã«ããã ç§ã¯ãã°ããã®éãã®åé¡ãæ±ããŠããŸãã
@IgorMinarã¯ãã³ã¡ã³ãããŒã¹ã®ng-repeatïŒhttps://github.com/angular/angular.js/pull/1646ïŒã§ããã€ãã®äœæ¥ãè¡ããŸããããã³ã¡ã³ãã¯ãã¹ãŠã®ãã©ãŠã¶ãŒã§ããŸãåçãããªããããããã§ã¯ãªãå¯èœæ§ããããŸããããŒãžãããŸããã 代ããã«ããããããéå§ãšçµäºã®ç¹°ãè¿ãã¿ã°ããŸãã¯ãéå§-ç¹°ãè¿ããšç¹°ãè¿ãã©ãã«ã®èŠçŽ æ°ãã®ããããã䜿çšãã代æ¿ãœãªã¥ãŒã·ã§ã³ãæ€èšããŠããŸãã
{{}}ã®ãããªãã¢å ã§ãã³ãã¬ãŒããèš±å¯ããã®ã¯ã©ãã§ãã
å€åïŒ
{{ïŒ ng-repeat = "foo in l"
é¢é£ããã¡ã¢ã§ãç§ã¯2çªç®ã®è£éãã©ãŒã ã«å€§ããªæè¡ç課é¡ããããŸããïŒãšåæ§ã®åé¡ã
{{{}}}ã®ããã«ãhtmlæåããšã¹ã±ãŒãããã
æ°ããã¹ãã³ïŒ
2013幎1æ29æ¥ç«ææ¥12:38 PMãããŒãããŒã³ã³ããŒãŠã£ã³<
[email protected]>ã¯æ¬¡ã®ããã«æžããŠããŸãïŒ
@IgorMinar https://github.com/IgorMinarã¯ã
ã³ã¡ã³ãããŒã¹ã®ng-repeatïŒïŒ1646httpsïŒ//github.com/angular/angular.js/issues/1646ïŒ
ãã ããã³ã¡ã³ãã¯ãã¹ãŠã®ãã©ãŠã¶ã§ããŸãåçããããšã¯éããªããããåçãããå¯èœæ§ã¯äœããªããŸãã
ããŒãžãããŸãã 代ããã«ã圌ãã¯ãããã代æ¿ãœãªã¥ãŒã·ã§ã³ãæ€èšããŠããŸã
ãéå§ãªããŒãã¿ã°ãšçµäºãªããŒãã¿ã°ããŸãã¯ãéå§ãªããŒããšæ°
ã©ãã«ãç¹°ãè¿ãèŠçŽ ãâ
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-12856484ã§è¡šç€ºããŠãã ããã
é åå ã®ãªããžã§ã¯ãããšã«2ã€ã®ãtdãèŠçŽ ãçæãããããŒãã«ã§ãã®åé¡ãçºçããŸããã
ãã®æ©èœãè¿œå ããããã®+1ã ãããšåãå¶éã«ééããã ãã§ãã
ïŒãããïŒ
ããã§ãåãåé¡ããããŸãã ãng-repeat-childrenãã®ããã«ãçŸåšã®èŠçŽ ã§ã¯ãªãåã ããç¹°ãè¿ããã®ãããng-omit-tagãïŒçŸåšã®ã¿ã°ãåé€ããŠåããã®ãŸãŸã«ããŠããïŒã®ãããªãã®ã䜿çšããããšæããŸãã ng-repeatãšäžç·ã«ã ããã«ããããã®åé¡ãåé¿ããããã«çæããã倧éã®ç¡å¹ãªããŒã¯ã¢ãããåé¿ã§ããŸãã
è°è«ãããŠããå¶éãå®å
šã«ç解ããŠããªãã 芪èŠçŽ ã«ng-repeatãé
眮ããããšãæ©èœããã®ã¯ãªãã§ããïŒ http://jsfiddle.net/JyWdT/13/
誰ããåé¡ããã詳现ã«èª¬æãããã£ãã«ãäœæã§ããŸããïŒ
lgalfasoãããªãã®ãã£ãã«ã¯ãããããã1ã€ã®å®çŸ©ãæã€è€æ°ã®å®çŸ©ãªã¹ããäœæããŸãã å¿ èŠãªåºåã¯ãè€æ°ã®å®çŸ©ãæã€1ã€ã®å®çŸ©ãªã¹ãã§ãã
ãŸãã¯ãç§ã®å Žåãé
åå
ã®ãã¹ãŠã®ã¢ã€ãã ã«å¯ŸããŠãtdãèŠçŽ ã®ãã¢ãäœæããå¿
èŠããããŸãã
é
åããããšããŸãããã
[{name:dan, age:15}, {name:steve, age:21}]
ãããŠç§ã¯åºåããå¿ èŠããããŸãïŒ
<tr><td>dan</td><td>15</td><td>steve</td><td>21</td></tr>
çŸæç¹ã§ã¯ãAngularã§ãããéæããæ¹æ³ã¯ãããŸããã
trèŠçŽ ã«ng-repeatãé 眮ããããšã§ãããè¡ãããšã¯ã§ããŸãããïŒ
http://plnkr.co/edit/lJvkOpz0NnKWcfEeM4lE?p=preview
æ¥ãåå2æ24åPMã«2013幎4æ21æ¥ãäžzilles [email protected]ã¯æžããŸããïŒ
lgalfasoãããªãã®ãã£ãã«ã¯ãããããã1ã€ã®è€æ°ã®å®çŸ©ãªã¹ããäœæããŸã
æå³ã å¿ èŠãªåºåã¯ãè€æ°ã®å®çŸ©ãªã¹ãã§ãã
å®çŸ©ããŸãã¯ç§ã®å Žåãã®ãã¹ãŠã®ã¢ã€ãã ã«å¯ŸããŠãtdãèŠçŽ ã®ãã¢ãäœæããå¿ èŠããããŸã
é åã
é åããããšããŸãããã[{ååïŒãã³ã幎霢ïŒ15 }ã{ååïŒã¹ãã£ãŒãã幎霢ïŒ21 }]
ãããŠç§ã¯åºåããå¿ èŠããããŸãïŒ
ãã³ 15 ã¹ãã£ãŒã 21 çŸæç¹ã§ã¯ãAngularã§ãããéæããæ¹æ³ã¯ãããŸããã
â
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-16716788ã§è¡šç€ºããŠãã ãã
ã
ããããªãã»ã©ãç§ã®åã®ã³ã¡ã³ããç¡èŠãã
2013幎4æ21æ¥åå9æ9åãããžã§ã€ãœã³ã»ãã¥ãªã ããžã§ã€ãœã³ã [email protected]ã¯æžããïŒ
trèŠçŽ ã«ng-repeatãé 眮ããããšã§ãããè¡ãããšã¯ã§ããŸãããïŒ
http://plnkr.co/edit/lJvkOpz0NnKWcfEeM4lE?p=preview
æ¥ãåå2æ24åPMã«2013幎4æ21æ¥ãäžzilles [email protected]ã¯æžããŸããïŒ
lgalfasoãããªãã®ãã£ãã«ã¯ãããããã1ã€ã®è€æ°ã®å®çŸ©ãªã¹ããäœæããŸã
æå³ã å¿ èŠãªåºåã¯ãè€æ°ã®å®çŸ©ãªã¹ãã§ãã
å®çŸ©ããŸãã¯ç§ã®å Žåãã®ãã¹ãŠã®ã¢ã€ãã ã«å¯ŸããŠãtdãèŠçŽ ã®ãã¢ãäœæããå¿ èŠããããŸã
é åã
é åããããšããŸãããã[{ååïŒãã³ã幎霢ïŒ15 }ã{ååïŒã¹ãã£ãŒãã幎霢ïŒ21 }]
ãããŠç§ã¯åºåããå¿ èŠããããŸãïŒ
ãã³ 15 ã¹ãã£ãŒã 21 çŸæç¹ã§ã¯ãAngularã§ãããéæããæ¹æ³ã¯ãããŸããã
â
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-16716788ã§è¡šç€ºããŠãã ãã
ã
dl / dt + ddã®åé¡ãçºçããã°ãããªã®ã§ãæ°ããng-repeat-childrenïŒãŸãã¯ng-repeat-innerïŒã«å¿ é ã®ãã£ã¬ã¯ãã£ãããªãããšã確èªããŸãã
+1
æ°ããæ什ng-repeat-innerã®ææ¡ã ãã®ææ¡ã«åé¡ããªããã°ããã¹ãŠã®ã¬ã€ããå€æŽããŸã
åãng-repeat
ãã£ã¬ã¯ãã£ãã䜿çšããæ¹ãè¯ããšæããŸãããå
ã®æçš¿ã瀺åããŠããããã«ããã®ãã£ã¬ã¯ãã£ããHTMLã³ã¡ã³ãã§äœ¿çšã§ããããã«ããŸãã
ãã®ãããªãã®ãæ©èœããã¯ãã§ãïŒ
<dl>
<!-- ng-repeat="(name, definition) in myList" -->
<dt>{{name}}</dt>
<dd>{{definition}}</dd>
<!-- /ng-repeat -->
</dl>
ç¹°ãè¿ããããããã¯ã®éå§ãšçµäºãã©ã®ããã«éæããããã¯æ£ç¢ºã«ã¯ããããŸãããïŒ <!-- /ng-repeat -->
ã¯@ProLoserã«ãã£ãŠææ¡ãããŸããïŒãHTMLã³ã¡ã³ãã䜿çšããããšã¯æŽç·Žããã解決çã«ãªããšæããŸãã
ãããã¡ã€ã¢ãã³ã¡ã³ããã³ã¡ã³ãã«é¢ãããã®ä»ã®åé¡ã殺ãããšãã§ããããšãèãããšãç§ã¯
ããã¯çŽ æŽããããšã¯æããªãã§ãã ããã ããããç§ã¯ng-repeatã䜿çšãããšããã¢ã€ãã¢ã奜ãã§ãã
å±æ§ng-repeat-single-rootãå«ããããšã¯å¯èœã§ããããïŒ
trueã«èšå®ãããšãã«ãŒããªãã§ng-repeatãå®è¡ãããã®
ãšã¬ã¡ã³ãïŒ äŸãã°ïŒ
ã«ãªããŸãïŒ
3ïŒ54 PMã§ç«ã2013幎4æ23æ¥ã«ã¯ãããTadayonã®[email protected] ïŒ
åãng-repeatãã£ã¬ã¯ãã£ãã䜿çšããæ¹ãè¯ããšæããŸãããèš±å¯ããŸã
ãã®ãã£ã¬ã¯ãã£ããå ã®æçš¿ãšããŠHTMLã³ã¡ã³ãã§äœ¿çšãã
ææ¡ããŸãããã®ãããªãã®ãæ©èœããã¯ãã§ãïŒ
- {{åå}}
- {{æå³}}
ãããã¯ã®éå§ãšçµäºãã©ã®ããã«ç¹°ãè¿ãããæ£ç¢ºã«ããããªã
éæãããã ããïŒç§ã¯ç§ã®äŸã§ã¯ïŒã
ããããHTMLã³ã¡ã³ãã䜿çšããããšã¯ãšã¬ã¬ã³ããªè§£æ±ºçã«ãªããšæããŸããâ
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-16891970ã§è¡šç€ºããŠãã ãã
ã
maxcanããœãŒã¹htmlãæå¹ã«ä¿ã€ã®ã§ããsingle-rootãã®å©ç¹ãèŠãããšãã§ããŸããããã®æ§é ã§ã¯ãdlãã¿ã°å ã«ä»ã®ãã®ãè¿œå ããããšã¯ã§ããŸãã...ããšãã°å¿ èŠãªåºå®å®çŸ©åçå®çŸ©ã®ã«ãŒãã®åã«å«ããã lgalfasoã®ãœãªã¥ãŒã·ã§ã³ã¯ãããåŠçããŸãã
@maxcanã¯ã倧ããªæçŽããããã©ãŒãã³ã¹ã®äœäžããªããã°ããã®ããããã£ng-repeat-single-rootãè¿œå ããããšã¯ã§ããªããšæããŸãïŒãŸãããããè¿œå ããŠãããã«åºã¥ããŠåçã«ããŸãïŒã çè«çæ ¹æ ã¯ããã®ããããã£ã®å€æŽãåã³ã³ãã€ã«ãåŒãèµ·ããå¯èœæ§ãé«ããšããããšã§ã[ãããŠèª°ãåã³ã³ãã€ã«ã奜ãŸãªã]
@bowserseniorã®ææ¡ã奜ãã§ãããæåŸã®ã³ã¡ã³ããšããŠããããå§ãããŸãïŒ <!-- /ng-repeat -->
ããã¯ããã©ãŒãã³ã¹ãããã®æ®å¿µã§ãã ãšã«ãããç§ã¯åŒ·ãæ¯æããŸã
@lgalfasoã®ãœãªã¥ãŒã·ã§ã³ããã£ã¬ã¯ãã£ããdivã«å
¥ããããšãã§ãã
ãã ã®ã³ã¡ã³ã..
13:58ã®æ°Žææ¥ã2013幎4æ24æ¥ã«ã¯ããã£ãŒã³Soferã®[email protected] ïŒ
@bowsersenior https://github.com/bowserseniorã®ææ¡ã奜ãã§ããã
ç· ããããã®ã³ã¡ã³ããšããŠããããå§ãããŸãïŒâ
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-16964155ã§è¡šç€ºããŠãã ãã
ã
ç§ã¯@ProLoserã«åæããŸããããã¯ã <!-- /ng-repeat -->
ãHTMLã³ã¡ã³ãã¢ãããŒãã®ããé©åãªçµäºã¿ã°ã§ãããšããããšã§ãã 1ã€ã®æ³šæç¹ãšããŠãangularã§ã¯ãã£ã¬ã¯ãã£ããHTMLã³ã¡ã³ãã§å®çŸ©ã§ããããããã®åé¡ã®æœåšçãªè§£æ±ºçãšããŠHTMLã³ã¡ã³ããç Žæ£ã§ãããšã¯æããŸããã ã³ã¢ã¢ã³ã°ã«éçºè
ã¯ããã®ã¹ã¿ãã¯ãªãŒããŒãããŒã®è³ªåã§ãã®åé¡ã«å¯ŸåŠããããã«HTMLã³ã¡ã³ãã䜿çšããããšãèšç»ããŠããããšã瀺ããããšãèŠããŠãããŠãã ããïŒå
ã®æçš¿è
ãææããããã«ïŒïŒ
ããã«ãããè¡ãæ¹æ³ãããéããç§ã¯ããããç Žæ£ããŠãããŸããŸãã
ã³ã¡ã³ãã
14:41ã®æ°Žææ¥ã2013幎4æ24æ¥ã«ã¯ãããTadayonã®[email protected] ïŒ
@ProLoserhttps ïŒ //github.com/ProLoserã«åæããŸã HTMLã³ã¡ã³ãã¢ãããŒãã®ããè¯ãçµäºã¿ã°ã§ãã äžã€
泚æãangularã§ã¯ãã£ã¬ã¯ãã£ããHTMLã³ã¡ã³ãã§å®çŸ©ã§ããã®ã§ãç§ã¯ããŸãã
ããã«å¯Ÿããæœåšçãªè§£æ±ºçãšããŠãHTMLã³ã¡ã³ããç Žæ£ã§ãããšèããŠãã ãã
åé¡ã ã³ã¢ã®Angularéçºè ã圌ãã瀺ããããšãèŠããŠãããŠãã ãã
ãã®ã¹ã¿ãã¯ãªãŒããŒãããŒã§ãã®åé¡ã«å¯ŸåŠããããã«HTMLã³ã¡ã³ãã䜿çšããäºå®ã§ã
質åïŒå ã®ãã¹ã¿ãŒã§ææãããŠããããã«ïŒïŒâ
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-16969268ã§è¡šç€ºããŠãã ãã
ã
@lgalfasoã®ng-repeat-innerã«+1ããŸãã ç§ã¯ã€ãã«ãããæãéããäœãã欲ããã§ãã
ããã¯ã¢ãŠãã¯ã³ã¡ã³ãã§ãããè¡ããŸãã ããã¯ã¢ãŠãã§dlã¿ã°ã䜿çšããŠè¡ã£ãããšã移æ€ããããšããŠããŸããããã®åé¡ã解決ããããŸã§ããã¯äžå¯èœã®ããã§ãã
ããã¯ç§ã®æèŠã§ãã®ã§ã @ mheveryãŸãã¯@IgorMinarããã®å
¥åãªãã§ããããäžç²ã®å¡©ã§åã£ãŠãã ããã
ã³ã¡ã³ãã䜿çšããŠng-repeatãæ©èœãããæ¹ãæè»ã§ããããšãããããŸãããšã«ããã$ compilerãå€æŽããªããšèªç¶ã«èŠããªãããããbetweencommentsãã¿ã€ãã®ãã£ã¬ã¯ãã£ããåŠçã§ããŸãã ãã®çç±ã¯ããã£ã¬ã¯ãã£ãããæ³å®ãããŠããããšãå®è¡ããããã«äžããããèŠçŽ ã®å€åŽããã¹ãããŠèŠãããšã«æ³šæãæãå¿
èŠãããã®ã¯å¥åŠã«èŠããããã§ãã
ã³ã¡ã³ã/ã³ã¡ã³ããªããç¶ç¶çãªè«äºã®çç±ã§ããå Žåãç§ãã¡ã¯äž¡æ¹ãæã£ãŠããã ãã§ã¯ãããŸãããïŒ ããã»ã©äžè¬çãªåé¡ã3ãæ以äžè§£æ±ºãããŠããªãããšãç解ããã®ã¯é£ãããšæããŸãã ãã®èåŸã«ããçç±ãäž»ã«å®è£ ã«é¢ããè«äºã«ãããã®ã§ããå Žåããããæé©ãªããã®ãäœãããã«é·ãåŸ ã€ããããå®éã«å®è£ ããïŒãããŠããããå°æ¥çã«æŽæ°/è¿œå ããïŒæ¹ãæãŸããããã§ãã
ãã ããã»ãšãã©ã®å Žåãng-repeat-innerãç¹å®ã®äœãã®ãå éšãã§èŠçŽ ã®ã»ãããç¹°ãè¿ãããšãæãå Žåãã»ãšãã©ã®å Žåãããçš®ã®æä»çãªå€éšã³ã³ãããŒãæ¢ã«äœæããŠããããšãæå³ããŸãã ãããã£ãŠãã³ã¡ã³ãã®å®è£ ã¯ããçšéãåºããããããŸãããïŒãããããå¯èœãªéãé¿ãããäœåãª1/2è¡ã®ã³ãŒãã§ããïŒãããã¯ããã䜿çšãããŠããªãïŒãããŠããããåªå é äœãäœãã¯ãã§ãïŒãšæããŠããŸããèŠçŽ å ãã£ã¬ã¯ãã£ãã
HTMLã³ã¡ã³ãã䜿çšãããã©ããã®åé¡ã¯ããã®åé¡ãæ°ãæéæªè§£æ±ºã§ãããšããäºå®ãšã¯äœã®é¢ä¿ããããŸããã å¿ èŠãªã®ã¯ãåé¡ã決å®ããŠè§£æ±ºçãå®è£ ããããã«ãAngularã¡ã³ããããã®æ³šæã ãã ãšæããŸãã
ã³ã¡ã³ãããŒã¹ã®ãªããŒã¿ãŒã®åé¡ã«ã€ããŠã¯ã httpsïŒ//github.com/angular/angular.js/pull/1646ãåç §ããŠ@lgalfasoãœãªã¥ãŒã·ã§ã³ã¯ã
ïŒ1646ãææããŠããã ãããããšãããããŸãã @mheveryã«ãããã®è°è«ã«ã¯ããã³ã¡ã³ãããããŸãïŒãããããã©ãŒããããšã©ãŒïŒïŒ
ãã®ãããè¯ãæ¹æ³ããäœã§ããããç§ãã¡ãç¥ã£ãŠãããããã®ã«ãšæããŸãïŒ
ã³ã¢ããŒã ã®ã³ã³ã»ã³ãµã¹ã¯ãçŸåšãã®åé¡ã«åãçµãæåã®æ¹æ³ã¯æ¬¡ã®ããããã§ãããšããããšã§ãïŒæ§æã¯ãŸã 決ãŸã£ãŠããŸããããå®è£ ã¯ããããã¹ãŠã§ã»ãŒåãã§ãïŒã
ãããã®äŸã«ã¯ãã¹ãŠ2ã€ã®td
ã¿ã°ãå«ãŸããŠããŸãããªããŒã¿ãŒãä»»æã®æ°ã®èŠçŽ ãç¹°ãè¿ãããšãèš±å¯ããå¿
èŠãããããšã瀺ãããã£ãã®ã§ãéæ³ã§ãããæå³çã«ãããè¡ããŸããããã®äŸãããŒãã«ã䜿çšããããã«å€æããããšããå§ãããŸãããšããŒãã«ã®è¡ã§ãããä»ãããªãã©ã€ã³ã«ãªãããªãã¡ã¯ã¿ãªã³ã°ããæéããããŸããã
æ§æAïŒ
<dl>
<dt ng-repeat="(name, definition) in myList">{{name}}</dt>
<dd ng-repeat-next>{{definition}}</dd>
<dd ng-repeat-next>{{definition}}</dd>
</dl>
æ§æBïŒ
<dl>
<dt ng-repeat-start="(name, definition) in myList">{{name}}</dt>
<dd>{{definition}}</dd>
<dd ng-repeat-end>{{definition}}</dd>
</dl>
æ§æCïŒ
<dl>
<dt ng-repeat="(name, definition) in myList" ng-repeat-start>{{name}}</dt>
<dd>{{definition}}</dd>
<dd ng-repeat-end>{{definition}}</dd>
</dl>
æ§æDïŒ
<dl>
<dt ng-repeat="(name, definition) in myList" ng-repeat-group>{{name}}</dt>
<dd ng-repeat-group>{{definition}}</dd>
<dd ng-repeat-group>{{definition}}</dd>
</dl>
é·æçã«ã¯ããã©ãŠã¶ã®ãµããŒããæ¹åãããããæ°ãã<template>
èŠçŽ ã®äœ¿çšãéå§ããŸããããã«ããã次ã®ããã«ç°¡åã«å®è¡ã§ããããã«ãªããŸãã
æ§æXïŒ
<template>
<dl>
<ng repeat="(name, definition) in myList">
<dt>{{name}}</dt>
<dd>{{definition}}</dd>
<dd>{{definition}}</dd>
</ng>
</dl>
</template>
ãã®ãœãªã¥ãŒã·ã§ã³ã®PRãäœæãããå Žåã¯ãããŒãžãããŸãã ãŸããç¹å®ã®æ§æã奜ãå Žåã¯ã声ãäžããŠãã ããã
å ¥åããããšãããããŸãã ç§ã®èŠè§£ã§ã¯ãæ§æAã¯ã次ã®ãããªãã¹ããããã«ãŒãã§ã¯æ確ã§ã¯ãããŸããã
<dl>
<dt ng-repeat="...">loop 1</dt>
<dt ng-repeat="..." ng-repeat-next>loop 2</dt>
<dd ng-repeat-next>is this within loop 2 or only loop 1</dd>
</dl>
æ§æBãšCã¯ã»ãŒåãã§ãããäž¡æ¹ã®éžæè¢ã奜ãã§ãïŒæ§æBã®æ¹ãåªããŠãããšæãå Žåã§ãïŒ
äœãã足ããªãå Žåãé€ããŠãæ§æDã«ã¯æ§æAãšåããã¹ããããã«ãŒãã®åé¡ããããŸã
çŽç²ã«æå°éã®æåãæžããªããã°ãªããªããšããçç±ã§ãå¯èœã§ããã°Bãéžã³ãŸãã ãŸããæã察称çã«èŠããŸããèŠèŠçãªå¯Ÿç§°æ§ãããããã管çãæãç°¡åã ãšæããŸãã
lgalfasosã®ã³ã¡ã³ãã¯ãèå³æ·±ããžã¬ã³ããææããŠããŸãã 圌ã®äŸã®ãã¹ããããã«ãŒãã2çªç®ã§ã¯ãªãæåã®èŠçŽ ã«ããå Žåã¯ã©ããªããŸããã ãããããšãäœãã足ããªãå Žåãé€ããŠãæ§æã®ãã¹ãŠã®ããŒãžã§ã³ãäžæ確ã«ãªããŸãã
@lgalfasoãææ¡ããng-repeat-inner
ãšæ§æXã®ng repeat
ã®éãã¯ã <template>
ã©ããã³ã°ã«ãããããããããããããŸããã 誰ãã説æã§ããŸããïŒ
ç§ããããç解ããŠãããã©ããã¯ããããŸãããã <ng>
ã¿ã°ã¯DOMã®äžéšã«ã¯ãªããªãã®ã§ã dl
äžã§ã®äžæ£ãªãã¹ãæ§é ãåé¿ããŠãããšæããŸãã
ææ¡ãããæ§æã«ã€ããŠã¯ãBã«æ祚ããŸãã
æ§æXã®å Žåã¯ãDOMã®äžéšã§ã¯ãªããããŸããŸãªãã£ã¬ã¯ãã£ãããã¹ãã§ããæ±çšãããŒã©ãããŒèŠçŽ <ng>
ã䜿çšã§ãããšæããŸãã ããã¯ã ng-repeat
ç¹å®ã®ãŠãŒã¹ã±ãŒã¹ã«ã®ã¿é©çšãããng-repeat-inner
ãããäžè¬çã§ãã
æ§æXå Žåã¯ãé·æçãªç®çã¯ãã®ã¡ããã©ããäžè¬çãªããŒãžã§ã³ã§ããng-repeat-inner
ãç§ã¯æããng-repeat-inner
ãïŒ*ã®ã¿ã§ã¯ãªãïŒææ¡AãBã®äžæ¹ã«æ²¿ã£ãŠæ¡çšããå¿
èŠãããã次ã®CãDïŒ
ng-repeat-inner
ã¯ã©ã¡ããåãdomæ§é ãæã£ãŠããŸãng-repeat-inner
ååã§ã@ daegon123ïŒXãå«ãïŒ@IgorMinarã®åæãããæ§æã®ãããããšã®éã®å·®ng-repeat-inner
æ§æã䜿çšãããšãä»»æã®ç°ãªãã³ã³ãããªãèŠçŽ ã®éåãç¹°ãè¿ããŠã¿ãŸããããšããããšã§ãã ããšãã°ã table
ãŸãã¯tbody
ä»ã®ç¹°ãè¿ãããªã<tr>
ãããéã«ãäžé£ã®<tr>
ç¹°ãè¿ããŸãã ãã®å Žåãç¹°ãè¿ãèŠçŽ ã«ã¯ã ng-repeat-inner
ããã€ã³ãããããã®æ確ãªèŠªããããŸããã
<table>
<thead>...</thead>
<tr ng-repeat-start="(name, definition) in myList">...</tr>
<tr>...</tr>
<tr ng-repeat-end>...</tr>
<tr>...</tr>
<tfoot>...</tfoot>
</table>
ãŸãã¯ã <dl>
å
ã®ãªããžã§ã¯ãããšã«è€æ°ã®å®çŸ©
<dl>
<dt ng-repeat-start="...">{{item.term1}}</dt>
<dd>{{item.def1}}</dd>
<dt>{{item.term2}}</dt>
<dd>{{item.def2}}</dd>
<dt>{{item.term3}}</dt>
<dd ng-repeat-end>{{item.def3}}</dd>
</dl>
@ es128ã³ã¡ã³ããšã³ãŒããããããšãã ãããããªã¹ããããŠããä»ã®æ§æã®1ã€ã«æ²¿ã£ãŠng-repeat-inner
ãåãå
¥ããããšãææ¡ããçç±ã§ãããã³ã¡ã³ãã«å®éã®ã³ãŒããå«ãŸããŠããã®ãèŠãŠã ng-repeat-inner
ãå¿
èŠãã©ããçåã«æãå§ããŸããã äœãã«åºããããå Žåã¯ãå¥ã®ã³ã¡ã³ããæçš¿ããŸããããããšãããããŸãã
ng-repeat-innerã®åé¡ã¯ã次ã®ããã«ããã¹ãŠã®å Žåã«äœ¿çšã§ããããã§ã¯ãªãããšã§ãã
<ul>
<li>some static prefix item</li>
<!-- repeat these nodes -->
<li>{{ something }}</li>
<li>{{ something else }}</li>
<!-- repeat end -->
<li>some static postfix item</li>
</ul>
人工èŠçŽ ïŒdivãªã©ïŒãulïŒhtmlä»æ§ããšïŒã«å ¥ããããšãã§ããªããããããã§ã¯ng-repeat-innerã䜿çšã§ããŸããã
ãšããã§ããã³ãã¬ãŒãèŠçŽ ã䜿çšãããšãulãšliã®éã«äººå·¥èŠçŽ ãé 眮ã§ããããã«ãªããŸãã
ãŸããæ§æXã«ããŸãå·çããªãã§ãã ãããããã¯ãæçµçã«æ£ç¢ºãªæ§æãå®è¡ã§ããããã«ãªãããšã®ç°¡åã§æ±ãäŸã§ãããããŸã 説æããŠããŸããããããã«å¥ã®äŸããããŸããäžïŒ
æ§æYïŒ
<ul>
<li>some static prefix item</li>
<template repeat="item in items">
<li>{{ item.name }}</li>
<li>{{ item.owner }}</li>
</template>
<li>some static postfix item</li>
</ul>
ng-repeatã°ã«ãŒãã«IDãèšå®ããã®ã¯ã©ãã§ããïŒ
ããããã°ãã©ã®ã¬ãã«ããã§ãèªç±ã«ã¢ã€ãã ãåãä»ããããšãã§ããŸãã äœãã®ãããªãã®
<dl>
<dt ng-repeat="item in items" ng-repeat-group="someId">{{item.term}}</dt>
<dd ng-repeat-with="someId">{{item.definition}}</dd>
</dl>
å¿ èŠãªæè»æ§ãåŸãããå¯èœæ§ããããŸãã
æ§æCã®ææ¡ãããå®è£ ã¯ããããä»ã®èŠçŽ ããã£ã¬ã¯ãã£ãã«å¯ŸããŠãã®åãã¡ã«ããºã ãç°¡åã«ããããšãå¯èœã«ããæ§æã§ãããšç§ãæãããšãããããŸãã
ããä»äºã«ãŒã«ã¹ïŒ ç§ã¯å€ãéãããŠæ§æCãå®è£
ããããšããŸãããããã¯æ£ããæ©èœããŸããããã¹ãŠã®ng-repeat
ãã³ã¡ã³ãã«å€æãããã©ã³ã¹ã¯ã«ãŒãžã§ã³ã®ããããã¹ãã¯ãµããŒããããŠããŸããã
ng-repeat-start
æ¢ããŠDOMã暪æã§ããªãå Žåããããã³ã°ã®ããã«ng-repeat-end
å±æ§ã®æ·±ããèšç®ã§ããŸããã ããªãã®ã¢ãããŒãã¯åé¡ã解決ããŠããããã§ã...
ããŒã...äœããããããããã§ãã ã³ãããã«ããã¥ã¡ã³ãããªããããæ£ããæ§æã䜿çšããŠããªãå¯èœæ§ããããŸãã
ãããèŠãŠãã ããïŒ
http://plnkr.co/edit/sVilxKaNrhNM4JrkuQ5r?p=preview
ãã¹ããããŠããªãå Žåã®åºåã¯æ¬¡ã®ããã«ãªããšäºæ³ããŸããã
Term: elastic
Static term
This definition should be repeated for every term: 'elastic' term
Term: par
Static term
This definition should be repeated for every term: 'par' term
ãããŠãã¹ãããããã®ã®å ŽåïŒ
Term: elastic
Static term
Subterm: superelastic
Static subterm
This should be repeater for every subterm: 'super' subterm from 'elastic' term
Subterm: subelastic
Static subterm
This should be repeater for every subterm: 'sub' subterm from 'elastic' term
This definition should be repeated for every term: 'elastic' term
Term: par
Static term
Subterm: superpar
Static subterm
This should be repeater for every subterm: 'super' subterm from 'par' term
Subterm: subpar
Static subterm
This should be repeater for every subterm: 'sub' subterm from 'par' term
This definition should be repeated for every term: 'par' term
ç§ã¯äœãã足ããªãã®ã§ããïŒ
@lrlopezããªãã眮ããäŸã¯ãææ°ããŒãžã§ã³ã®ã³ãŒãã䜿çšããŠããŸããã ãŸãã23è¡ç®ã«è¿œå ã®</dl>
ããããŸã
è¿
éãªè¿ä¿¡ããããšãããããŸãïŒ ããã§ãã23è¡ç®ã«äœåãª</dl>
ãããŸãããã©ã€ãã©ãªãæŽæ°ããŸããã ããã«ãããããããç§ã¯ãŸã ãã¹ããããäŸãå®è¡ããããšãã§ããŸãã...
ããããŸãããããã¯ãDOMã®åãã¬ãã«ã«ããè€æ°èŠçŽ ã®ãã£ã¬ã¯ãã£ãã®å®éã®åé¡ã®ããã§ãã ãã®åé¡ãä¿®æ£ããŠPRãæŽæ°ããŸãã
ng-repeat-innerãng-repeat-nextãªã©ã®ä¿®æ£ã¯ãå®éã®DOMããŒããžã®ãã€ã³ãåäœã«ãã£ãŠå¶éãããç¡æ°ã®ç¶æ³ã®1ã€ã®ã¿ã解決ããŸãã
ãã¹ãŠã®ãã£ã¬ã¯ãã£ãã«åå¥ã«ããããé©çšãã代ããã«ãå®éã®ããªãŒã§ã¬ã³ããªã³ã°ãããªãä»®æ³ããŒãã®ãµããŒããè¿œå ããããšã§ããã¬ãŒã ã¯ãŒã¯å šäœã§ããã解決ã§ããŸãã
ã³ã¡ã³ãã䜿çšãããšããèãæ¹ã¯äŒŒãŠããŸãããèŠèŠãããŠèªã¿ã«ããã³ãŒãã«ãªãããã®ããŒãã«ååãä»ããŠäœããã®æ¹æ³ã§éããæ¹æ³ãå¿ èŠã§ãã æ°ããã³ã¡ã³ãããŒãæ§æãçºæãã代ããã«ãæ¢åã®HTMLæ§æã䜿çšããŸãã
ããšãã°ãSASSãµã€ã¬ã³ãã¯ã©ã¹ã«äŒŒãæŠå¿µãšããŠèããŠãã ããã
<div id="myComplexList">
<ng-virtual ng-repeat="...">
<a></a>
<b></b>
<c></c>
</ng-virtual>
</div>
Result:
<div id="myComplexList">
<a></a>
<b></b>
<c></c>
<a></a>
<b></b>
<c></c>
<a></a>
<b></b>
<c></c>
...
</div>
äžè¬çãªèãæ¹ã«+1ããŸãããng-repeat-groupã®ãããªãã®ãéžã³ãŸãã
<ng-repeat-group="b in ches">
// group markup to be repeated here
</ng-repeat-group>
ç§ã¯ä»®æ³ããŒãã®ã¢ã€ãã¢ã奜ãã§ããããããããã§ã®åé¡ã®äžè¬çãªè§£æ±ºçã«ãªãããšã«ã¯å察ã§ãã
å¯èœã§ããã°ã人工ã³ã³ããã®äœæãå¶éããããšæããŸãã ã³ã³ããã¯å šäœçãªçµæã®htmlã«è¡šç€ºãããªãå ŽåããããŸããã管çãå¿ èŠãªhtmlã³ãŒããä¹±éã«ãªãå§ããŸãã
å€ãã®å Žåãç¹°ãè¿ããããã®ãæ ŒçŽããããã®ã³ã³ãããå¿ èŠã«ãªããŸãã å ïŒ
<tr>
<td ng-repeat-start>1</td>
<td ng-repeat-end>2</td>
</tr>
ïŒããã§ã®ã³ã³ããã¯[tr]ã§ãïŒ
ææ¡ãããä»®æ³ããŒããœãªã¥ãŒã·ã§ã³ã䜿çšãããšãããã¯æ¬¡ã®ããã«ãªããŸãã
<tr>
<ng-virtual ng-repeat="...">
<td>1</td>
<td>2</td>
</ng-virtual>
</tr>
åé·ãªã³ã³ãããäœæããïŒãã®2è¡ã®è¿œå ã§ãããã³ãŒããé·ããªã£ãå Žåã«ã©ããªãããèããã®ã¯äžå¿«ã§ãã
ãã1ã€ã®åé¡ã¯ãã³ãŒããçŸåšã©ã®ã¬ãã«ã®DOMã«ããããææ¡ããããšããã®ãé¢åã«ãªãå§ããããšã§ãã
ããã@ es128ããã®ã³ãŒã
<table>
<thead>...</thead>
<tr ng-repeat-start="(name, definition) in myList">...</tr>
<tr>...</tr>
<tr ng-repeat-end>...</tr>
<tr>...</tr>
<tfoot>...</tfoot>
</table>
ä»®æ³ããŒãã䜿çšãããšãããã¯æ¬¡ã®ããã«ãªããŸãã
<table>
<thead>...</thead>
<ng-virtual ng-repeat="...">
<tr">...</tr>
<tr>...</tr>
<tr>...</tr>
</ng-virtual>
<tr>...</tr>
<tfoot>...</tfoot>
</table>
æåã®3ã€ã®trãšæåŸã®trã®ç¹°ãè¿ãã¯åãã¬ãã«ã§ãããã³ãŒãããã£ãšèŠãã ãã§ã¯ãããããç°ãªãã¬ãã«ãšééããå¯èœæ§ããããŸããããããªããšãèªåèªèº«ãèŠã€ãå§ããŸããç¹ã«ãããã®ãã®ãå ¥ãåã«ãªãå§ããå Žåãã³ãŒããã©ã®ã¬ãã«ã§äœæ¥ããŠããããïŒããããééã£ãŠïŒé¢åã«èšç®ããŸãã
ãããç§ã奜ããªïŒçš®é¡Bã®ïŒæ§æã®ç¹å®ã®ããŒãžã§ã³ã§ãïŒ
<ul>
<li>some static prefix item</li>
<li ng-repeat-block="(name, definition) in myList">{{ something }}</li>
<li>{{ something else }}</li>
<li ng-repeat-block-close>{{ something else }}</li>
<li>some static postfix item</li>
</ul>
@stanvassã®ææ¡ã¯ã @ IgorMinarãæ§æXãšããŠæçš¿ãããã®ã®ããªãšãŒã·ã§ã³ã§ããäž»ãªåé¡ã¯ããã©ãŠã¶ãŒã®ãµããŒãããªãããšã§ãã
1ã€ã®å
éšèŠçŽ ã®ã¿ãç¹°ãè¿ãããå Žåã ng-repeat-start
ãšng-repeat-end
äž¡æ¹ãæã€ããšã¯åé·ã§ããããšã«æ°ã¥ããŸããã
<tr>
<td ng-repeat-start ng-repeat-end>repeat this</td>
</tr>
ãããé²ãng-repeat-single
ãããã°ããã®ã«ãšæããŸãã å
ã
<tr>
<td ng-repeat-single>repeat this</td>
</tr>
@ daegon123åäžã®èŠçŽ ãç¹°ãè¿ãããå Žåã¯ã
<tr>
<td ng-repeat="...">repeat this</td>
</tr>
ng-repeat-start
ãng- repeat-end
ãå¿
èŠãããŸãã
@lgalfasoããããšããææ¡ãããæ§æã«å€¢äžã«ãªããããŠããã§ã«æã£ãŠãããã®ãå¿ããŠããŸã£ãããã§ãã ng-repeat-start / endãããã«å®çŸãããããšãé¡ã£ãŠããŸãã
ãã®åé¡ã¯ãåã«1ã€ã®èŠçŽ ãç¹°ãè¿ãããšã§ã¯ãªããšæããŸãã 芪ãç¹°ãè¿ããã«èŠçŽ ã®ã»ãããç¹°ãè¿ãæ¹æ³ã«ã€ããŠã®è©³çŽ°ã ã€ãŸãã <dt>..<dd>...
-ããããããã«ã¯ä»ã«ãå€ãã®è¯ãäŸããããŸããã
æ§æXã¯ãç¹°ãè¿ãã®ãã¹ããéå§ãããšæ確ã«å®çŸ©ãããå¯äžã®æ§æã§ãã æ§æADã§æ¬¡ã®ããã«èšè¿°ããŸãã
<template>
<dl>
<ng repeat="book in myList">
<dt ng-repeat="author in book.authors">{{author.name}}</dt>
<dd>{{book.title}}</dd>
<dd>{{book.description}}</dd>
</ng>
</dl>
</template>
ããã¯ããè¯ãææ¡ã§ãã
MyBlackberry®ããéä¿¡
- - -ãªãªãžãã«ã¡ãã»ãŒãž - - -
æçš¿è
ïŒdaegon123 [email protected]
æ¥ä»ïŒ2013幎5æ6æ¥æææ¥22:57:16
å®å
ïŒangular /angular.jsangularã [email protected]
è¿ä¿¡å
ïŒ "angular / angular.js" [email protected]
件åïŒReïŒ[angular.js] ngRepeat with DL / DD / DTïŒïŒ1891ïŒ
1ã€ã®å
éšèŠçŽ ã®ã¿ãç¹°ãè¿ãããå Žåã ng-repeat-start
ãšng-repeat-end
äž¡æ¹ãæã€ããšã¯åé·ã§ããããšã«æ°ã¥ããŸããã
<tr>
<td ng-repeat-start ng-repeat-end>repeat this</td>
</tr>
ãããé²ãng-repeat-single
ãããã°ããã®ã«ãšæããŸãã å
ã
<tr>
<td ng-repeat-single>repeat this</td>
</tr>
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGitHubã§è¡šç€ºããŠãã ããã
https://github.com/angular/angular.js/issues/1891#issuecomment -17524685
+1ãããã¯å€§ããªå¶éã§ãã
ïŒ+1ïŒããã«å¯Ÿãã解決çãèŠãã®ã楜ãã¿ã«ããŠããŸãïŒ ä»ã®ãšãã<li>
ã䜿çšããŸãããAngularããã®è§£æ±ºçãèŠã€ãããããã®ããŒã¯ã¢ããããªãã¡ã¯ã¿ãªã³ã°ããããšæããŸã=ïŒ
ïŒ2783ã¯ããã解決ããŸããïŒ
ã¯ãã çéžããã°ããã®ãœãªã¥ãŒã·ã§ã³ããããŸãïŒe46100f7097d9a8f174bdb9e15d4c6098395c3f2
ãã®å·ãç· ãããããŸãã
ãšã©ãŒãçºçããŸããïŒãã®ç°¡åãªäŸã§ã¯<TypeError: Object #<Text> has no method 'hasAttribute'>
ïŒ
<table>
<tr ng-repeat-start="value in [1,2,3,4]">I get repeated</tr>
<tr ng-repeat-end>I also get repeated</tr>
</table>
ãŸããgevgenyãè¿°ã¹ãŠããããã«åé¡ãååŸããŸãã
<tr>
<td data-ng-repeat-start="column in selectedItem.Beds" class="text-center">Avail. Beds</td>
<td data-ng-repeat-end>Extra Bed Spaces</td>
</tr>
@ kharnt0xãã®puulãªã¯ãšã¹ããåç §ããŠãã ããhttps://github.com/angular/angular.js/pull/2859
ïŒ2783ã¯ãããã©ã®ããã«è§£æ±ºããŸããïŒ
{[{h: "1",
o: [{h: "1.1",
o: [{h: "1.1.1"},
{h: "1.1.2"},
{h: "1.1.3"}]},
{h: "1.2",
o: [{h: "1.2.1"},
{h: "1.2.2"},
{h: "1.2.3"}]},
...ã
次ã®ãããªåºåãå¿ èŠã§ãã
<h1>1</h1>
<h2>1.1</h2>
<h3>1.1.1</h3>
<h3>1.1.2</h3>
<h3>1.1.3</h3>
<h2>1.2</h2>
<h3>1.2.1</h3>
<h3>1.2.2</h3>
<h3>1.2.3</h3>
æ§æã¯äœã§ããããïŒ
@ChrisCinelli hgroup
䜿çšããŠã¿ãŠãã ãã
<h1>1</h1>
<hgroup>
<h2>1.1</h2>
<hgroup>
<h3>1.1.1</h3>
<h3>1.1.2</h3>
<h3>1.1.3</h3>
<hgroup>
<h2>1.2</h2>
<hgroup>
<h3>1.1.1</h3>
<h3>1.1.2</h3>
<h3>1.1.3</h3>
<hgroup>
<hgroup>
ãã®ãããhgroupã¯HTML5ïŒhttp://html5doctor.com/the-hgroup-element/ïŒããåé€ãããããã§ãããåé¡ã¯ãã£ãšè€éã§ãããããŒã¿ã°ã¯ããšãã°äœ¿çšãããã ãã§ãã
ããã¯æããã«èš±å¯ãããã¹ããŠãŒã¹ã±ãŒã¹ã§ãããAngularã®å®£èšåãã¥ãŒã®å²åŠããŸã£ããç Žãããšã¯ãããŸãã...
ããªããæ¢ããŠããç¹å®ã®åºåã«ã€ããŠãCSSãæ€èšããŸããã
ã«ãŠã³ã¿ãŒïŒ
èŠãïŒ
https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Counters
http://css-tricks.com/almanac/properties/c/counter-increment/
14:46ã§ç«ã2013幎6æ18æ¥ã«ã¯ãã¯ãªã¹ã»ãããªã®[email protected] ïŒ
ãããã£ãŠãhgroupã¯HTML5ããåé€ãããããã§ãïŒ
http://html5doctor.com/the-hgroup-element/ïŒããã®æšªã«ãç§ãããã§ãã£ãããã«
åé¡ã¯ãã£ãšè€éã§ãããããŒã¿ã°ã¯
äŸã
ããã¯æããã«èš±å¯ãããã¹ããŠãŒã¹ã±ãŒã¹ã§ããã
Angularã®ãã¹ãŠã®å®£èšåãã¥ãŒå²åŠ...â
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-19644594ã§è¡šç€ºããŠãã ãã
ã
æ確ã«ããããã«äŸãšããŠããããŒã䜿çšããŸãã...å®éã«ã¯ãããŒã¿æ§é ã®ã¬ãã«ããšã«ç°ãªãæ§é ãæã€æ¯èŒçè€éãª<div>
ããããŸãã
ãããŸã§ã«èŠã€ããå¯äžã®è§£æ±ºçã¯ãJavascriptã§ããŒã¿æ§é ãç·åœ¢åããããŸããŸãªã¬ãã«ã«ng-switchã䜿çšããããšã§ããããã«ã¯ãè¿œå ã®divã¬ãã«ãå¿
èŠã«ãªããŸãã
ãã®ãœãªã¥ãŒã·ã§ã³ã«ã¯ãªãŒããŒããããããïŒã€ãŸããããŒã¿æ§é ãç·åœ¢åããããã®ã¡ã¢ãªãšCPUïŒãHTMLã¯ã代ããã«äœ¿çšã§ããã¢ã³ããŒã¹ã³ã¢ãã³ãã¬ãŒããããã¯ããã«äžæçã«èŠããŸã...
ã¬ãã«ããšã«æ瀺ãåºãããšã¯ã§ããŸããïŒ ã©ããªçš®é¡ãããããªã
ããªããããã§è©±ããŠããæ§é ãªã®ã§ãç§ã¯ãã ã¹ãããŒãã€ããã§ããã§ãããã
ããããç§ã®çµéšã§ã¯ãããªããæã£ãŠãããšãã«ng-switchã¯ã»ãšãã©å¿
èŠãããŸãã
ãã£ã¬ã¯ãã£ããšng-includeãžã®ã¢ã¯ã»ã¹ãããã³ã¹ãã²ããã£ã³ãŒããã³ãã¬ãŒããžã®ã¢ã¯ã»ã¹ã
16:27ã§ç«ã2013幎6æ18æ¥ã«ã¯ãã¯ãªã¹ã»ãããªã®[email protected] ïŒ
ç§ã¯ãããæ確ã«ããããã«äŸãšããŠããããŒã䜿çšããŸãã...å®éã«ã¯ç§ã¯æã£ãŠããŸã
ã®ã¬ãã«ããšã«ç°ãªãæ§é ãæã€æ¯èŒçè€éãªdiv
ããŒã¿æ§é ãç§ããããŸã§ã«èŠã€ããå¯äžã®è§£æ±ºçã¯ãããªãŒãç·åœ¢åããããšã§ãã
Javascriptã䜿çšããããŸããŸãªã¬ãã«ã§ng-switchã䜿çšããŸãã
ãã®ãœãªã¥ãŒã·ã§ã³ã«ã¯ãªãŒããŒãããããããŸãïŒã€ãŸããããŒã¿ãç·åœ¢åããããã®ã¡ã¢ãªãšCPU
æ§é ïŒããã³HTMLã¯ã
代ããã«äœ¿çšã§ããã¢ã³ããŒã¹ã³ã¢ãã³ãã¬ãŒã...â
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããããGi tHubhttpsïŒ//github.com/angular/angular.js/issues/1891#issuecomment-19650391ã§è¡šç€ºããŠãã ãã
ã
ããã¯ã©ã®ããã«èŠãããã§ãïŒ http ïŒ
ããªãçãã©ãã«ïŒ1.xx xïŒã説æããã§ãã¯ããŒã¯ã®æ°ãªã©ã¯ãããŒã¿ããŒã¹ããååŸãããŸãã
ãã®éšåãAngularã«å€æãããªãã·ã§ã³ãæ€èšããŠããŸããããããŸã§ã®ãšãããµã€ã³ãã¯ãããŸããã
çŸåšã®ãã¥ãŒã¯ããªãããžãã¯ããªããäœãèµ·ãã£ãŠããã®ããæ¯èŒçæ確ã«ããŠããŸãã
ç§ãããç解ããŠãããªããããªãã¯JavaScriptã®äžéšã®ãã¹ãŠã®ã¬ãã«ãå£ããªããã°ãªããªãããšãããªã瀺åããŠããŸãã
ããã¯ç§ã«ã¯ä¹±éã§ããŸãšãŸãããªããèªã¿ã«ããããã«èŠããŸãã ãã®ããã«ã衚瀺ããããã®ãã¹ãŠã®æ å ±ãå«ãããŒã¿æ§é ãèãããšãããžãã¯ãå®å šã«ãã¥ãŒã«é¢é£ãããã®ãã¥ãŒã«éåžžã«åºæã§ããã®ã«ããªãå¥ã®ãã¡ã€ã«ïŒã¢ãžã¥ãŒã«/ã³ã³ãããŒã©ãŒïŒã§ã³ãŒãã䜿çšããå¿ èŠãããã®ã§ããïŒ ç§èŠãã³ã³ãããŒã©ãŒã¯æ¬¡ã®ããã«ãªããŸãïŒãããŠçŸåšã®å®è£ ã§ã¯çŸåšã§ãïŒïŒ
確ãã«ãããã€ãã®divãè¿œå ããŠCSSãå€æŽããããšã¯ã§ããŸãããAngularã§æ©èœãããããã«ãããå¿ èŠãªå ŽåãAngularã¯ãããã§äœæ¥ãè¡ãã®ã«äŸ¿å©ã§ãšã¬ã¬ã³ããªæ¹æ³ã®åŠšãã«ãªã£ãŠãããšæããŸãã
KnockoutJSã®ããŒã¿ãã€ã³ãã£ã³ã°ã¯ãhtmlèŠçŽ <div data-bind="foreach: ...">
ãžã®ãã€ã³ãã£ã³ã°ãšãã³ã³ããã¬ã¹å¶åŸ¡ãããŒæ§æã <!-- ko foreach: ... --><!-- /ko -->
äž¡æ¹ãå¯èœã«ãããããéåžžã«äŸ¿å©ã§ããããšãããããŸããã Angularã¯ã @ bowserseniorãææ¡ããæ§æãšéåžžã«ãã䌌ããåæ§ã®æ§æãªãã·ã§ã³ã®ã»ããããµããŒãã§ããŸãã
Knockoutã®ãã³ã³ããã¬ã¹ããªãã·ã§ã³ã®è©³çŽ°ã«ã€ããŠã¯ã以äžãã芧ãã ããã
http://knockoutjs.com/documentation/foreach-binding.html
@ mg1075ä»®æ³æ§æã®å Žåã¯+1ã
KnockoutJSã䜿çšãããšãddã³ã¬ã¯ã·ã§ã³ãšãã¹ããããã³ã¬ã¯ã·ã§ã³ãç°¡åã«åŠçã§ããŸãã
äŸïŒ http ïŒ
æãåèã«ãªãã³ã¡ã³ã
ã¯ãã çéžããã°ããã®ãœãªã¥ãŒã·ã§ã³ããããŸãïŒe46100f7097d9a8f174bdb9e15d4c6098395c3f2
ãã®å·ãç· ãããããŸãã