[Vue warn]: Failed to mount component: template or render function not defined – full build
Я действительно попробовал каждый совет с 3 страниц поиска Google. Итак, что у меня есть:
const { mix } = require('laravel-mix');
const { VueLoaderPlugin } = require('vue-loader');
mix.webpackConfig({
resolve: {
alias: {
'vue$': 'vue/dist/vue.esm.js'
}
},
plugins: [
new VueLoaderPlugin(),
],
});
А
import Vue from 'vue';
import TestComp from './TestComp.vue';
Vue.component('test-comp', TestComp);
new Vue({
el: '#vue'
});
И
<div id="vue">
<test-comp></test-comp>
</div>
И я все еще получаю эту ошибку. Проблема в том, что это нормально работает на новом пустом проекте. Но я пытаюсь реализовать это в огромном проекте с большим количеством приличий. Такие как: eslint
, babel-core
, babel-loader
и тонны реагирующих вещей (около 25 зависимостей). Так что я понятия не имею, может ли что-то из этого повлиять на процесс компиляции. Потому что похоже, что vue-loader
не может видеть раздел <template>
по какой-то причине.
vue.esm.js?efeb:574 [Vue warn]: Failed to mount component: template or render function not defined.
found in
---> <TestComp> at resources/js/admin/TestComp.vue
<Root>
Так что я действительно запутался
TestComp.vue
<template>
<div>{{ name }}</div>
</template>
<script>
export default {
data() {
return {
name: 'John'
}
}
}
</script>
Проблема исчезла и все работает нормально после того, как я удалил mix.react()
из webpack.mix.js