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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Vuex

Vuexは、Vue.js アプリケーションのための状態管理ライブラリです。アプリケーション内で使用するコンポーネントのための集中データストアを提供。コンポーネント同士でデータをやり取りし、処理のフローを一貫させたり、データの見通しを良くすることができます。

Q&A

解決済

1回答

603閲覧

Vuex 絞り込み機能を実装したい

ruby_0ct

総合スコア57

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Vuex

Vuexは、Vue.js アプリケーションのための状態管理ライブラリです。アプリケーション内で使用するコンポーネントのための集中データストアを提供。コンポーネント同士でデータをやり取りし、処理のフローを一貫させたり、データの見通しを良くすることができます。

0グッド

0クリップ

投稿2019/01/15 18:26

入れ子になっているハッシュを参照して、絞り込み機能を実装したいと思っています。

dataの中身

[{ "id":1, "tweet":"ツイート内容", "hashtags":[ {"hash":"ハッシュタグ1"}, {"hash":"ハッシュタグ2"} ] }, { "id":2, "tweet":"ツイート内容", "hashtags":[ {"hash":"ハッシュタグ1"}, {"hash":"ハッシュタグ2"} ] }]

hashの値を判定して、ツイートの絞り込みを行う場合、どのような書き方が良いでしょうか?
computed内でfilterを利用するのはわかるのですが、入れ子になった場合がわかりません。

ご教授いただければ幸いです。

javascript

1<div v-for="(tweet, index) in tweets" :key="index"> 2 <p>{{ tweet.tweet }}</p> 3 4 <div class="hashtag" v-for="(hashtag, index) in tweet.hashtags" :key="index"> 5 {{ hashtag.hash }} 6 </div> 7</div>

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

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

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

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

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

guest

回答1

0

ベストアンサー

js

1{ 2 data: { 3 tweets: [{ 4 "id":1, 5 "tweet":"ツイート内容", 6 "hashtags":[ 7 {"hash":"ハッシュタグ1"}, 8 {"hash":"ハッシュタグ2"} 9 ] 10 }, 11 { 12 "id":2, 13 "tweet":"ツイート内容", 14 "hashtags":[ 15 {"hash":"ハッシュタグ2"} 16 ] 17 }], 18 target: 'ハッシュタグ1' 19 }, 20 computed: { 21 hoge() { 22 return this.tweets.filter(tweet => tweet.hashtags.some(tag => tag.hash === this.target)) 23 } 24 } 25}

html

1<div v-for="(tweet, index) in hoge" :key="index"> 2 <p>{{ tweet.tweet }}</p> 3 <div class="hashtag" v-for="(hashtag, index) in tweet.hashtags" :key="index"> 4 {{ hashtag.hash }} 5 </div> 6</div>

のようにsomeを使ってfilterすれば良いと思います。

投稿2019/01/16 01:12

de9

総合スコア312

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

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

ruby_0ct

2019/02/01 10:00

そんなメソッドがあるんですね! 解決できました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問