你如何创建一个类似的按钮?

时间:2016-04-21 14:25:50

标签: javascript vue.js

我正在与Laravel和Vue建立一个论坛。

当用户点击相似按钮时,我想增加1,如果再次点击它,我想减1。

到目前为止,我有这个观点。

<div ng-class="{ 'green' : isGreen() }">

事情是当用户点击按钮时,每个类似的按钮都会变成不喜欢的按钮吗?

你如何处理它?制作Vue组件??

另外,如何在我的视图文件中使用v-for访问每个“喜欢”的id(与按钮不同),所以我可以获得like id的值并将其传递给larval api?

<span v-for="comment in comments">

        <p> @{{ comment.reply }}</p>
        <button @click="addLikes(comment.id,auth_id)" v-if="auth_id" v-show="!unlike">like</button>
        <button @click="unLike(comment.likes.!!HERE!!)" v-if="auth_id" v-show="unlike">unlike</button>
        <p>@{{ comment.likes.length }} likes</p>



        <div v-if="auth_id == comment.user_id">
                <button class="btn btn-success btn-xs" @click="showComment(comment.id)" >edit</button>
            <button class="btn btn-danger btn-xs" @click="deleteComment(comment.id)">delete</button>
         </div>

    </span> 

Vue.js

[
{
"id": 13,
"reply": "thanks everyone",
"user_id": 2,
"topic_id": 1,
"created_at": "2016-04-20 19:36:58",
"updated_at": "2016-04-20 22:15:02",
"likes": [
        {
      "id": 48,
       "user_id": 3,
       "likeable_id": 13,
       "likeable_type": "App\\Comment",
       "created_at": "2016-04-21 22:18:05",
        "updated_at": "2016-04-21 22:18:05"
     }
      ]
   }

Route::delete('/api/likes/{id}', function($id) {
    return App\Like::destroy($id);
});

我是菜鸟,所以如果问题不清楚,我很抱歉。谢谢你的帮助

0 个答案:

没有答案
相关问题