无法读取参数返回的对象的字符串值

Cannot read string value of an object returned by params

我只是一个使用 Laravel 和 Vue 开发笔记应用程序的初学者。现在我在尝试读取由 router.js 的参数返回并由 MyIndex.vue 的道具内部的消息接收的对象的字符串值时遇到问题。虽然我认为对象已经收到,但当用 toast 提醒用户时,“this.message.message”应该是对象消息中的字符串值,vue 无法读取它。

当我在 toast 中打印出“this.message”时,它会发出 [object Object] 警报。但是当我在 toast 中使用“this.message.message”打印出来时,它会发出警报但根本没有任何消息!

MyIndex.vue

import MyMaster from './Layout/MyMaster.vue';
import { useToast } from 'vue-toastification';
export default{
    name:'MyIndex',
    components: {MyMaster},
    props: { message: Object},
    created(){
        if(this.message){
            const toast = useToast();
            toast.info(this.message.message, {
                timeout: 2000,
            });
        }
    },
}

route.js

const ifAuth = (to, from, next) => {
const data = localStorage.getItem('auth');
if(data !== 'null'){
    const user = JSON.parse(data).user;
    return next({
        name:'index',
        params:{
            message: { type:'i', message: `${user.name} Already Logined!` }
        }
    })
}
return next();
}

尝试解析您的 json:

toast.info(JSON.parse(this.message).message), {
...