2016-04-11 22 views
6

Tôi đang sử dụng cái này tuyệt vời angular2-modal nhưng không thể tìm ra cách trả về giá trị kết quả từ phương thức tùy chỉnh của tôi.Cách trả về kết quả từ angular2-modal, hoặc nói chung từ ng2-components

Tôi nhanh chóng nó như thế này:

let dialog: Promise<ModalDialogInstance>; 
    let bindings = Injector.resolve([ 
     provide(ICustomModal, { useValue: this.gewaehltesBild }) 
    ]); 
    var self = this; 
    dialog = this.modal.open(
     <any>ImagecropperComponent, 
     bindings, 
     new ModalConfig("md", true, 27)); 


    dialog.then((resultPromise) => { 
     return resultPromise.result.then((result) => { 
      this.lastModalResult = result; 
      this.mitarbeiter.avatarImg = this.gewaehltesBild; 

      $(self.elementRef.nativeElement).find('#bildSelector').val(""); 
     },() => this.lastModalResult = 'Rejected!'); 
    }); 

Tôi đã cố gắng để gửi returnValue tôi với

this.dialog.close(this.croppedImage); 

nhưng kết quả luôn luôn là null. Có một quy ước trong angular2 làm thế nào để trả về các giá trị từ các thành phần, được sử dụng bởi angular2-phương thức?

Cảm ơn bạn!

Trả lời

8

Tác phẩm tốt cho tôi, tôi quá đang sử dụng hộp thoại tùy chỉnh và đây là cách tôi bắt kết quả

var dialog = this._modal.open(VideoPlayerComponent, 
     resolvedBindings, 
     new ModalConfig('lg', true, 27)); 
    dialog 
     .then((d) => d.result) 
     .then((r) => { console.log(r); }, (error) => { console.log(r); }); 

Khi tôi gọi close trên dụ

this._dialog.close("Hello"); 

Nó in Hello

+0

nó hoạt động, tôi nghĩ rằng tôi đã có một lỗi đánh máy trong phương pháp tạo ra giá trị trả về bên trong của phương thức ...:/thx – Weissvonnix

Các vấn đề liên quan