मुझे एक घटक को अभिव्यक्ति पारित करने की आवश्यकता है जिसका मूल्यांकन किसी घटक के टेम्पलेट के अंदर किया जाएगा।Angular2 में इनपुट के रूप में किसी घटक को अभिव्यक्ति कैसे पास करें?
उदाहरण के लिए, घटक: घटक के टेम्पलेट के साथ
@Component({
selector: 'app-my-component',
...
})
export class MyComponent {
@Input items: MyClass;
@Input expression: String;
...
}
:
<div *ngFor="let item of items">
{{expression}}
</div>
MyComponent का उपयोग:
<app-my-component [items]="listOfItems" [expression]="'[item.id] item.name'">
</app-my-component>
के रूप में वहाँ एक से अधिक इनपुट हो जाएगा, मैं चाहूँगा TemplateRef के उपयोग से बचने के लिए।
1) NgFor निर्देश का ngForTemplate
इनपुट संपत्ति का उपयोग करना::
क्या ' '[item.id] item.name'' करने के लिए माना जाता है? यह मेरे लिए एक अभिव्यक्ति की तरह नहीं दिखता है। आप चारों ओर बाइंडिंग पास नहीं कर सकते हैं। –
इसे '[अभिव्यक्ति] = "' {" id ": [item.id]," name ": item.name} '' 'के रूप में पास करें और अभिव्यक्ति.आईडी और अभिव्यक्ति.नाम –
@ गुंटर ज़ोचबॉयर के रूप में इसका मूल्यांकन करना चाहिए स्ट्रिंग, आइटम = {"आईडी": 1, "नाम": "आइटम 1"} से [1] आइटम 1 –