鍍金池/ 問答/HTML5  Linux/ EventEmitter 的 emit 發(fā)射數(shù)據(jù)失敗?還是接收失?。浚ù藛栴}比較

EventEmitter 的 emit 發(fā)射數(shù)據(jù)失?。窟€是接收失?。浚ù藛栴}比較復(fù)雜)

此問題相對麻煩一些,但我寫的條理還是很清晰的。

1.用node.js服務(wù)器,做了一個(gè)搜索產(chǎn)品小例子,結(jié)構(gòu)如下:
圖片描述

2.點(diǎn)擊頁面搜索應(yīng)該看到的正確結(jié)果如下:
圖片描述

3.當(dāng)前情況是參數(shù)傳遞失敗,如下:
參數(shù)傳遞失敗

4.但能打印出參數(shù),如下:
能打印輸出

5.product.service.ts 關(guān)鍵代碼如下:
圖片描述

6.search.component.ts 關(guān)鍵代碼如下:
private products: Observable<Product[]>
圖片描述

7.product.component.ts 關(guān)鍵代碼如下:
圖片描述

麻煩哪位高手指點(diǎn)一下,問題出在哪里?

回答
編輯回答
空痕

products 是一個(gè)數(shù)組變量,而this.productService.search(...) 返回一個(gè) Observable。
所以在 product.component.ts 中監(jiān)聽到表單的提交應(yīng)該:

this.productServuce.searchEvent.subscribe(params => {
    this.productService.search(params).subscribe((res:Product[]) => {
        this.products = res
    })
})
2017年9月7日 00:37