В OS X с Laravel / Homestead я получаю сообщение об ошибке при использовании Vue (v2.2.1). Компонент не загружается, и появляется ошибка консоли «Uncaught TypeError: Vue.component не является функцией».
Ошибка полной консоли
Uncaught TypeError: Vue.component is not a function
at eval (eval at <anonymous> (app.js:321), <anonymous>:17:5)
at Object.<anonymous> (app.js:321)
at __webpack_require__ (app.js:20)
at app.js:64
at app.js:67
Меня сбивает с толку то, что если я внесу изменения в app.js, веб-пакет не обновится, чтобы отразить какие-либо изменения. Поэтому мне нужно А) исправить проблему, указанную выше, и Б) выяснить, как заставить веб-пакет отображать обновления в консоли.
Любая помощь будет принята с благодарностью! Я новичок. Вот мой код ...
файл app.js
Vue.component('video-upload', require('./components/VideoUpload.vue'));
const app = new Vue({
el: 'body'
});
VideoUpload.vue
<template>
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Example</div>
<div class="panel-body">
This is an example
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
mounted() {
console.log('Component mounted.')
}
}
</script>
upload.blade.php
@extends('layouts.app')
@section('content')
<video-upload></video-upload>
@endsection
package.json
{
"private": true,
"scripts": {
"prod": "gulp --production",
"dev": "gulp watch"
},
"devDependencies": {
"bootstrap-sass": "^3.3.7",
"gulp": "^3.9.1",
"jquery": "^3.1.0",
"laravel-elixir": "^6.0.0-9",
"laravel-elixir-vue": "^0.1.4",
"laravel-elixir-webpack-official": "^1.0.2",
"lodash": "^4.14.0",
"video.js": "^5.11.6",
"vue": "^2.2.1",
"vue-resource": "^0.9.3"
}
}