【发布时间】:2017-10-14 13:17:41
【问题描述】:
我是 Vue 新手,目前我使用的是 Vue 1.0。在我的 laravel 应用程序中,未加载 vue 组件。我在 Vue devtool 或 chrome devtool 中也没有收到任何错误。这是我的代码:
我的 master.blade.php 布局:
<!DOCTYPE html>
<html>
<head>
<title>Vue</title>
</head>
<body>
<div id="app">
<component is="{{ $vueView }}">
@yield('content')
</component>
</div>
<script src="{{ asset('js/main.js') }}"></script>
</body>
</html>
我的 about_page.blade.php
@extends('layouts.master', ['vueView' => 'AboutView'])
@section('content')
<h2>About View</h2>
@endsection
我的主页.blade.php
@extends('layouts.master', ['vueView' => 'HomeView'])
@section('content')
<h2>Home View</h2>
@endsection
我的资源/资产/js/dynamic_components.js
// Browserify Entrypoint
import Vue from 'vue';
import HomeView from './components/HomeView.vue';
import AboutView from './components/AboutView.vue';
new Vue({
el: '#app',
components: {
HomeView, AboutView
}
});
我的 /resources/assets/js/components/AboutView.vue
<template>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Atque placeat, quis maiores sequi inventore, voluptatibus labore hic fugit, autem consequuntur ipsum ex laudantium. Accusamus optio veniam velit, laudantium. Odit, facilis.
</template>
<script>
export default {
ready() {
alert('home view is ready');
}
}
</script>
我的 /resources/assets/js/components/HomeView.vue
<script>
export default {
created() {
alert('Welcome to the Home Page');
}
}
</script>
我的路线.php
Route::get('/home-view', function () {
return view('home_view');
});
Route::get('/about-view', function () {
return view('about_view');
});
我的 gulpfile.js
var elixir = require('laravel-elixir');
require('laravel-elixir-vueify');
elixir(function(mix) {
mix.browserify(['main.js', 'dynamic_components.js']);
});
它显示的只是来自home_page.blade.php 和about_page.blade.php 的h2。我哪里错了???
Sorry for such a long post....
【问题讨论】: