Как передать данные строки Sql в файл Vue (Laravel Project) - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь передать данные и использовать их внутри файла Vue, но я не могу заставить их работать. Вот мой код

<template>
    <div class="row profile-container">
        <div class="col-sm-4">
            <img src="/img/default.jpg" alt="" class="profile-img">
        </div>
        <div class="col-lg">
            <h5>{{$user->name}}</h5>
            <div class="card w-100">

                <ul class="list-group list-group-flush">
                    <li class="list-group-item">Cras justo odio</li>
                    <li class="list-group-item">Dapibus ac facilisis in</li>
                    <li class="list-group-item">Vestibulum at eros</li>
                </ul>
            </div>
        </div>
    </div>
</template>

Вот контроллер профиля, который возвращает профиль с данными

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;

class ProfileController extends Controller
{
    public function index($id)
    {
        $user = User::where('unique_id', $id)->firstOrFail();

        return view('pages.profile')->with('user', $user);
    }
}

Вот файл app.js

require('./bootstrap');

window.Vue = require('vue');

Vue.component('welcome', require('./components/Welcome.vue').default);
Vue.component('profile', require('./components/Profile.vue').default);


const app = new Vue({
    el: '#app'
});

Маршруты

Route::get('/', 'PagesController@index' );

Auth::routes();

Route::get('/logout', '\App\Http\Controllers\Auth\LoginController@logout');
Route::get('/profile/{id}', 'ProfileController@index');

Вот пип-файл лезвия Дидли Ду, я не знаю, что писать дальше, похоже, мой пост в основном состоит из кода, поэтомуЯ просто добавлю некоторые детали здесь, что sprettycoolshaggyisgod Я не знаю, что еще добавить здесь, пожалуйста, отправьте помощь

@extends('layouts.master')
@section('title')
  <title>Profile</title>
@endsection
@section('content')
  @if(Auth::user()->type==='user')
  <profile></profile>
@elseif (Auth::user()->type==='admin')
  <h1>Hi Admin</h1>
@endif
@endsection

1 Ответ

0 голосов
/ 31 января 2019

ваш скрипт должен выглядеть примерно так:

<script>
    export default {
        name: 'profile',
        data() {
            return {
                user: []
            }
        },
        methods: {
            getUser() {
                let _this = this;
                axios.get('/user')
                    .then(function (response) {
                        _this.user = response.data;
                    }).catch(function (error) {
                        console.log(error);
                });
            },
        created() {
            this.getUser();
        }
    }
</script>

добавьте это в ваш файл маршрутов:

Route::get('/brands', function($id) {
  $user = User::where('unique_id', $id)->findOrFail();
  return view('pages.profile')->with('user',$user);
});

дайте мне знать, если это поможет, я думаю, вы пропустилимного кода, это не так просто, как передача данных в представление Laravel, но, надеюсь, это поможет вам начать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...