質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

241閲覧

javascript で値を渡したい

退会済みユーザー

退会済みユーザー

総合スコア0

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/05/13 06:34

編集2019/10/03 09:10

onClick した際にクリックしたitemを引数に関数likeFluitsを発行したいのですが、fluitsListの中の値全てが引数となってしまいます。

例えばfluitsList = ['peach', 'apple']として、'peach'をクリックした場合
likeFluitsをLIKE_FLUITSアクションにdispatchさせ、payloadを'peach'としたいです。

javascript

1const ExampleFluits = (props) =>( 2 {props.fluitsList.map((item, idx)=>( 3 <sample key={item} onClick={(e)=>{{ console.log(`${e.target.innerText}was cliked`) 4 props.likeFluits(props.item)}}> ##ここでは選択したものがe.target.innerTextとして正常に出力できている 5 {itemKey} 6 </sample> 7 ))} 8 9 10class Fluits extends React.Component { 11 render(){ 12 <ExampleFluits 13 likeFluits={(e) => this.props.likeFluits(this.props.fluitsList)} 14 /> 15 16const mapDispatchToProps = (dispatch) => ({ 17 likeFluits: (queryStore) => dispatch(LIKE_FLUITS(queryStore)), 18 19}) 20 21export default connect(null, mapDispatchToProps)(Fluits); 22 23

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jun68ykt

2019/05/13 12:10

回答を書きましたが、とりあえず、ご質問に挙げられているコードを動かすようにして、それを修正するという手順を踏みました。正直いって、あまり(もしくは全く)役に立たない回答になっているかもしれません。その場合はいま手元にあるコードの抜粋ではなく、現状のものをほぼそのまま見たいので、index.js だったり、アクションやリデューサー、package.json なども含めて、GitHub に入れてもらうことは可能でしょうか?
退会済みユーザー

退会済みユーザー

2019/05/19 01:51

こちらの情報不足の中丁寧にご回答くださりありがとうございます。git確認しました。しかし解決できず、結局自己解決いたしました。
jun68ykt

2019/05/19 08:41

どういたしまして。自己解決されたとのことで、よかったです ????
退会済みユーザー

退会済みユーザー

2019/05/19 09:29

はい、ご返答ありがとうございます。しかし付随で不明点が出てきた為、よろしければければこちらもお答えいただけないでしょうか。 https://teratail.com/questions/190154
jun68ykt

2019/05/19 11:45

そちらのご質問にも回答しましたので、ご一読ください。
guest

回答1

0

ベストアンサー

こんにちは。

以下、役に立つ回答になっているか、やや心もとないのですが、ご質問にあるコードに対していくつか修正し、さらに、いくつかのファイルを補って、動くReactアプリにしたものを GitHub の以下のレポジトリ

に上げました。ベースになるアプリを create-react-app で作成していますので、もし Gitをお使いであれば、ターミナルから、以下の手順で動作確認できます。

 

  • cd q189122

 

  • yarn install

 

  • yarn start

 

上記によって、以下のように表示されます。(ブラウザのデベロッパーツールを開いておきます)

イメージ説明

上記の状態から、 peach と表示されている灰色の部分をクリックすると、redux-logger によって以下のようにconsoleに表示されます。

イメージ説明

console に prev state ▶action ▶next state ▶ と表示されている右向きの三角をクリックすると、それぞれの内容が展開されます。

イメージ説明

上記のconsole では、 LIKE_FRUITSアクションが発行されたことにより、state がどのように変わったかが分かります。

作成したサンプルでは、 statefruits というプロパティを持ち、これの値は配列です。 state.fruits は初期状態では空の配列で、各フルーツ名が表示されている灰色の部分をクリックすると、該当のフルーツ名(だけ)が、state.fruits に追加されていくことが、 console に出されたログを追っていけば分かると思います。

また、ソースコードの修正については、コミットを古い順に追っていけば、どのような修正をしたかが分かると思います。

上記のコードは、ご質問に挙げられている Fluitsをとりあえず動作確認できるようにしただけなので、このご質問の元になっている、oratyadottoさんが実際に手がけているアプリでは、他にも多くのコンポーネントやRedux要素がからんでいると思われますので、それらの修正に直接、役に立つ回答になっているかというと、あまり自信はないのですが、何らかの参考にして頂ければ幸いです。

投稿2019/05/13 12:05

編集2019/05/13 20:25
jun68ykt

総合スコア9058

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問