маршрутизатор click.native передает неверный параметр в Vue - PullRequest
0 голосов
/ 11 сентября 2018

Я пытаюсь передать аккаунт методу удаления в Vue. Я вывожу учетную запись прямо перед router-link, и она показывает правильную, но вывод учетной записи в методе показывает другую.

HTML

// OUTPUTTING
{{chosenAccount}}
// ROUTER CLICK
<router-link @click.native="remove(chosenAccount)" to="/summary/" text="summary"><span cursor: pointer;" title="Summary"></span></router-link>

JS

methods:{
    remove(account){
        console.log('removed ',account);
        this.removeAccountData(account); 
    },
},

console.log в remove показывает мою другую учетную запись, а не ту, которую я выбрал на странице.

Я что-то упустил?

Edit:

<template>
    <div id="container" >
        <div id="header">
            <router-link @click.native="remove(chosenAccount, $event)" to="/summary/" text="summary"><span cursor: pointer;" title="Summary"></span></router-link>
        </div>
        <div id="content" >
            <div id="settings" class="text-center" style="margin-left: -4px;">
                <h3 style="color:#1173BD;"><span v-text="chosenAccount.network_name"></span></h3>
                <!-- OUTPUTS ACCOUNT #2 (CORRECT) IN LOCAL STORAGE-->
                {{chosenAccount}}
                <h4>has been removed</h4>
                <h3>
                    <router-link @click.native="remove(chosenAccount, $event)" to="/summary/" text="summary"><span cursor: pointer;" title="Summary"></span></router-link>
                </h3>
            </div>
        </div>
        <div id="footer" style="text-align:center;">
            <router-link to="/" text="add_new_account"><span aria-hidden="true"> Add New Account</span></router-link>
        </div>
    </div>
</template>

<script>
import axios from "axios"
import {dataGetter} from "@/datagetter/dataGetter";
export default{
    name:"removed",
    mixins:[dataGetter],
    data(){
        return{
        }
    },
    methods:{
        getNewData(){
            this.getData();
        },
        remove(account, event){
            // OUTPUTS ACCOUNT #1 (INCORRECT) IN LOCAL STORAGE
            console.log(account);
        },
    },
    computed:{
        networkName(){
            let account = this.account;
            if( account != undefined){
                return account.network_name;
            }
            return "";
        },
    }
}
</script>
...