私はユーザーが好きなボタンをクリックできるフォーラムを作成しています。Vueでのクラスバインディング
私が達成しようとしているのは、ユーザーがボタンをクリックしたときに、そのボタンがLaracastのようなコメントを既に好きであることを示すために色付けしたいということです。
私はあなたが私がクラスバインディングを使用しています、と計算された小道具を参照しようとしています見ることができるように、私は
<div class="Media--footer background">
<div class="Media--footer__left">
<button @click="addOrRemoveLikes(comment.id,auth_id)"
v-if="auth_id"
>
<-------------- Here -------------------->
<i class="fa fa-thumbs-o-up" :class={'liked': --HERE-- }></i> {{ comment.likes.length }}
</button>
<div v-else>
<button
style="border: 0; background:white;"
@click="promptLogin=true"
>
<i class="fa fa-thumbs-o-up"></i> {{ comment.likes.length }}
</button>
</div>
</div>
<div class="Media--footer__right" v-for="like in comment.likes">
<a href="/@{{ like.user.name }}">{{ like.user.name }}</a>
</div>
</div>
を得たが、私は私が行うことができますどのように確認していない今のところ?それを行うことができますどのようにそれ。また、私は、component.SoにAUTH_IDを私は
liked: function(){
return this.auth_id == like.user_id
}
のようにそれを比較する必要があるように思える渡しています。しかし、事は、私はこの中で、引数(comment.likesを渡すことはできませんです場合)計算小道具に右?私は "好き"をループする必要がありますuser_idを取得する
私は自分自身を明確にしていない場合は申し訳ありません。助けをいただければ幸いです。
----更新-----
私はこのコードが、運...なぜしません。この作品を追加しましたか?
<button @click="addOrRemoveLikes(comment.id,auth_id)"
v-if="auth_id"
>
<i class="fa fa-thumbs-o-up" :class="{'liked': liked(comment.likes)}"></i> {{ comment.likes.length }}
</button>
Vueのインスタンス
liked:function(likes){
var self = this
likes.forEach(function(like){
return self.auth_id == like.user_id
})
}