将用户列表发送到我的Messenger页面,并使用ChatApp.vue组件在页面(messenger.blade.php)中显示用户

时间:2019-08-27 17:30:33

标签: javascript node.js json laravel vue.js

我正在尝试在使用laravel 5.4的网站中构建Messenger功能

我有一个ChatApp.vue组件,正在我的messages.blade.php中调用它。 在我的messagesController中,我有一个名为get的函数,该函数应该以response()-> json($ contacts)格式获取网站中所有用户的列表。

该功能有效,但是当我将response()-> son($ contacts)返回到我的messages.blade.php时,该页面无法加载,而是仅在浏览器中显示用户数据。

我的ChatApp.vue:

<template>
    <div class="chat-app">
        <Conversation :contact="selectedContact" :messages="messages"/>
        <ContactsList :contacts="contacts"/>
    </div>
</template>

    import Conversation from './Conversation';

    import ContactsList from './ContactsList';

    export default {
        props: {
            user: {
                type: Object,
                required: true
            }
        },
        data() {
            return {
                selectedContact: null,
                messages: [],
                contacts: []
            };
        },
        mounted() { 
            console.log(this.user);
            axios.get('/messages/messages')
                .then((response) => { 
                console.log(response.data);
                    this.contacts = response.data;
                });
        },
        components: {Conversation, ContactsList}
    }

import Conversation from './Conversation'; import ContactsList from './ContactsList'; export default { props: { user: { type: Object, required: true } }, data() { return { selectedContact: null, messages: [], contacts: [] }; }, mounted() { console.log(this.user); axios.get('/messages/messages') .then((response) => { console.log(response.data); this.contacts = response.data; }); }, components: {Conversation, ContactsList} }

我的messages.blade是我呼叫聊天应用程序的地方。

 

我的路线:

@extends('layouts.layout') 

@section('content')
<div class="container">
    <div class="row justify-content-center">
         <div class="col-sm-12">
            <div class="card">
                <div class="card-header">We Code Messenger</div>

                <div class="card-body" id="app">
                    <chat-app :user="{{ auth()->user() }}"></chat-app>
                </div>
            </div>
        </div>
    </div>
</div>
@endsection    

我的MessagesController @ get函数:

Route::get('/messages/messages', 'MessagesController@get'); 

我希望从中得到的结果是,当我在浏览器上转到messages.blade时,页面应该加载并且$ contacts应该发送到控制台,但是页面没有加载,只有$ contacts显示在上面。

0 个答案:

没有答案