1.プロジェクト表示画像
2.経験
2.1コミュニケーションの手段を決定し、コンポーネント間の関係を理解する-ニュース
分析の購読と公開:兄弟コンポーネントに属する検索エリア(検索コンポーネント)と表示エリア(メインコンポーネント)、の使用に関するコミュニケーション情報の購読と普及、このようにして、情報を直接送信することができます。(propsメソッドを使用する場合は、親コンポーネントを介してレイヤーごとに渡す必要がありますが、これは面倒です)。
2.2メッセージを購読して公開するときは、2つの質問を明確にする必要があります。誰がメッセージを公開するのか。誰がニュースを公開しますか?
分析:検索コンポーネントは、ユーザーから情報を入力し、[検索]をクリックして、入力情報をメインコンポーネントに渡す必要があります。メインコンポーネントは、ajaxリクエストデータを実行し、それを表示領域(メインコンポーネント)に表示します。
結論:検索コンポーネントはメッセージ(トリガーイベント)を公開し、メインコンポーネントはメッセージをサブスクライブします(イベントをリッスンし、対応するロジックを実行し
ます)。検索コンポーネントのクリックトリガーイベント-公開されたメッセージはクリックイベントに書き込む必要があります。クリックイベントはメソッドに書き込む必要があります。
主要コンポーネントはイベントをリッスンします-サブスクリプションメッセージはマウントされた部分に書き込む必要があります。
2.3 Ajaxを使用する場合、2つの質問を明確にする必要があります。どのコンポーネントに送信されますか?いつ送信しますか?
このプロジェクトでは、ajaxリクエストをmianコンポーネントで送信し、返されたデータをメインコンポーネント(表示領域)に表示する必要があります。ajaxリクエストは、ユーザーが検索ボタンをクリックした後(mianコンポーネントがサブスクライブした後)に行う必要があります。サブスクリプションメッセージに)(対応するコードはマウントされたフックに書き込む必要があります)
3.使用される配列メソッド
3.1配列のmapメソッド:
3.1.1理解
配列内の各オブジェクト要素から個々の属性を抽出し、それらをオブジェクトと同じ添え字の位置に配置するには、配列のmapメソッドを使用します。(既存の配列と返される配列のオブジェクト要素の数は同じですが、要素オブジェクトの属性名は同じではありません)
3.1.2コード例
// 数组中的map方法:从一个数组中的每个对象元素中抽取个别属性,作为一个对象放在相同的下标位置,要用数组的map方法。(已有数组和要返回的数组 两者的对象元素个数相同,但元素对象里面的属性名不相同)
const users = result.items.map(item => ({ //item是数组中对象元素
name:item.login, //将items 数组中每个对象的item.login属性值赋给新数组users中每个对象元素的name属性。(下同)
url:item.html_url,
avatar_url:item.avatar_url
})
一般的に使用される配列メソッド:filter()map()reduce()find()。最初の2つのメソッドは、新しい配列を返します。