यह क्या callSomeMethod()
कर रहा है पर निर्भर करता है नहीं है, लेकिन एक संभावना के लिए एक निर्देश को जोड़ने के लिए है *ngIf
तत्व, और उस निर्देश को OnInit
उस निर्देश के हुक में निष्पादित करें।
<div *ngIf="obj.someProperty" some-method-directive>
<!--render inner parts-->
</div>
और कहीं:
@Directive({
selector='[some-method-directive]',
})
class SomeMethodDirective implements OnInit { // OnInit imported from angular2/core
ngOnInit(){
// insert your someMethod lofic
}
}
आप इस विधि में माता पिता के घटक के लिए उपयोग की जरूरत है, तो आप निर्देश में निर्माता इंजेक्शन के माध्यम से इसे के ahold पाने के कर सकते हैं:
constructor(@Host(ParentComponent) private parent: ParentComponent){ }
और इसके बाद आपको this.parent
के माध्यम से इसका उपयोग होगा।
यह सबसे समान दृष्टिकोण है जिसे मैं एनजी 1 दृष्टिकोण के बारे में सोच सकता हूं, लेकिन जैसा कि मैंने कहा - someMethod()
को पूरा करने की आवश्यकता है, यह संभवतः एक व्यवहार्य समाधान नहीं हो सकता है। यदि नहीं, तो कृपया बताएं कि क्यों, और यह मुझे एक बेहतर विचार देगा कि हम यहां क्या कर रहे हैं।
http://stackoverflow.com/questions/36427670/angular2-calling-custom-function-after-ngswitch-new-view-is-created/36427769#36427769 के समान –