दिलचस्प पोस्ट
एक्सेस प्रतिबंध: आवश्यक पुस्तकालय पर प्रतिबंध के कारण पहुंच योग्य नहीं है .. \ jre \ lib \ rt.jar मैं एकल छवि में सभी छवियों को डाउनलोड करने के लिए Wget का उपयोग कैसे करूँ? जब मैं os.system () या subprocess.call () का उपयोग करता हूं, तो मैं कंसोल कैसे छुपूं? Emacs – कॉल करने में त्रुटि (सर्वर-प्रारंभ) Levenshtein: MySQL + PHP वसंत 3 एमवीसी, सही सिंटैक्स का इस्तेमाल करते हुए फ़ॉर्म बैकिंग ऑब्जेक्ट के रूप में <Foo> की सूची बनाएं सादे अंग्रेजी में PHP इको और PHP रिटर्न में क्या अंतर है? रनटाइम पर जेवीएम हीप आकार सेट करना एंड्रॉइड SQLiteOpenHelper डेटाबेस फ़ाइल नहीं खोल सकता पीएचपी में, क्या 0 को रिक्त माना जाता है? सूची फ़िल्टरिंग: सूची समझ बनाम लैम्ब्डा + फिल्टर ExecuteScalar, ExecuteReader और ExecuteNonQuery के बीच अंतर क्या है? क्या बीजीआर मूल्यों का समग्र रंग निर्धारित करने के लिए कोई सूत्र है? (ओपनसीवी और सी ++) किसी क्वेरी परिणाम के परिणामों का यादृच्छिक नमूना चुनें सभी सबफ़ोल्डर्स में जावा फाइलों को संकलित करना?

कोनालर 2 – एनजीफ़ोर नंबर का उपयोग करने के बजाय संग्रह

…उदाहरण के लिए…

<div class="month" *ngFor="#item of myCollection; #i = index"> ... </div> 

ऐसा कुछ करना संभव है …

 <div class="month" *ngFor="#item of 10; #i = index"> ... </div> 

… एक गैर सुंदर समाधान की तरह अपील के बिना:

 <div class="month" *ngFor="#item of ['dummy','dummy','dummy','dummy','dummy', 'dummy','dummy','dummy']; #i = index"> ... </div> 

?

Solutions Collecting From Web of "कोनालर 2 – एनजीफ़ोर नंबर का उपयोग करने के बजाय संग्रह"

आपके घटक के भीतर, आप नीचे वर्णित संख्याओं (ES6) की एक सरणी को परिभाषित कर सकते हैं:

 export class SampleComponent { constructor() { this.numbers = Array(5).fill().map((x,i)=>i); // [0,1,2,3,4] this.numbers = Array(5).fill(4); // [4,4,4,4,4] } } 

सरणी निर्माण के लिए यह लिंक देखें: JavaScript से 1..20 से पूर्णांकों की एक सरणी बनाने का सबसे सस्ता तरीका ।

आप ngFor साथ इस सरणी पर पुनरावृति कर सकते हैं:

 @Component({ template: ` <ul> <li *ngFor="#number of numbers">{{number}}</li> </ul> ` }) export class SampleComponent { (...) } 

या शीघ्र ही:

 @Component({ template: ` <ul> <li *ngFor="#number of [0,1,2,3,4]">{{number}}</li> </ul> ` }) export class SampleComponent { (...) } 

नहीं, अभी तक कोई भी तरीका नहीं है, इसके बजाय संख्याओं का उपयोग करने के लिए एनजीएफएफ़ का संग्रह है, फिलहाल, * एनजीएफ केवल एक संग्रह को एक पैरामीटर के रूप में स्वीकार करता है, लेकिन आप निम्न तरीकों से ऐसा कर सकते हैं:

पाइप का उपयोग करना

pipe.ts

 import {Pipe, PipeTransform} from 'angular2/core'; @Pipe({name: 'demoNumber'}) export class DemoNumber implements PipeTransform { transform(value, args:string[]) : any { let res = []; for (let i = 0; i < value; i++) { res.push(i); } return res; } } <ul> <li>Method First Using PIPE</li> <li *ngFor='#key of 5 | demoNumber'> {{key}} </li> </ul> 

सीधे HTML में संख्या सरणी का उपयोग करना (देखें)

 <ul> <li>Method Second</li> <li *ngFor='#key of [1,2]'> {{key}} </li> </ul> 

भाजित विधि का उपयोग करना

 <ul> <li>Method Third</li> <li *ngFor='#loop2 of "0123".split("")'>{{loop2}}</li> </ul> 

घटक में नई सरणी बनाने का उपयोग करना

 <ul> <li>Method Fourth</li> <li *ngFor='#loop3 of counter(5) ;#i= index'>{{i}}</li> </ul> export class AppComponent { demoNumber = 5 ; counter = Array; numberReturn(length){ return new Array(length); } } 

यहां के लिए डेमो काम कर रहा है –

http://plnkr.co/edit/ynH8Xzh12VoeYpmMR1YN?p=preview

मैं घटकों के सादे दोहराने के लिए एक सरणी आवंटित करने का विचार नहीं ले सकता, इसलिए मैंने एक संरचनात्मक निर्देश लिखा है। सरल रूप में, जो टेम्पलेट पर उपलब्ध सूचकांक को उपलब्ध नहीं करता है, ऐसा लगता है:

 import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'; @Directive({ selector: '[biRepeat]' }) export class RepeatDirective { constructor( private templateRef: TemplateRef<any>, private viewContainer: ViewContainerRef) { } @Input('biRepeat') set count(c:number) { this.viewContainer.clear(); for(var i=0;i<c;i++) { this.viewContainer.createEmbeddedView(this.templateRef); } } } 

http://plnkr.co/edit/bzoNuL7w5Ub0H5MdYyFR?p=preview

आप रद्दी का उपयोग कर सकते हैं:

 @Component({ selector: 'board', template: ` <div *ngFor="let i of range"> {{i}} </div> `, styleUrls: ['./board.component.css'] }) export class AppComponent implements OnInit { range = _.range(8); } 

मैंने कोड का परीक्षण नहीं किया लेकिन यह काम करना चाहिए

यदि आप एक बटन पर क्लिक करने के बाद गतिशील रूप से एक सरणी का आकार बढ़ाना चाहते हैं, तो कृपया मेरी गतिशील समाधान संलग्न करें (इस तरह मैं इस प्रश्न को कैसे मिला)।

आवश्यक चर का आबंटन:

  array = [1]; arraySize: number; 

उस समारोह की घोषणा करें जो सरणी को एक तत्व जोड़ती है:

 increaseArrayElement() { this.arraySize = this.array[this.array.length - 1 ]; this.arraySize += 1; this.array.push(this.arraySize); console.log(this.arraySize); } 

फ़ंक्शन को html में डालें

  <button md-button (click)="increaseArrayElement()" > Add element to array </button> 

NgFor के साथ सरणी के माध्यम से फिराना:

 <div *ngFor="let i of array" > iterateThroughArray: {{ i }} </div>