搜索

首页  >  问答  >  正文

Laravel项目中Vue 3组件无法显示

我已经尝试了我能想到的一切,但尽管没有构建错误,但我无法在我非常简单的项目中加载 Vue 组件。我不明白为什么,但在尝试使用 Laravelserve 查看页面时,我只是得到一个空白页面。

welcome.blade.php

<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
    
        <title>Laravel</title>
    
        <!-- Fonts -->
        <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap" rel="stylesheet">
    
    </head> 
    <body class="antialiased">
        <div id='app'>
            <Home />
        </div>
    
        <script scr="{{ asset('js/app.js') }}"></script>
    </body>
</html>

app.js

require('./bootstrap');

import { createApp } from 'vue'

import Home from './components/Home.vue';

const app = createApp({});

app.component('home', Home);

app.mount('#app');

Home.vue

<template>
    <div>
        <h1> WELCOME </h1>
    </div>
</template>

webpack.mix.js

const mix = require('laravel-mix');

/*
 |--------------------------------------------------------------------------
 | Mix Asset Management
 |--------------------------------------------------------------------------
 |
 | Mix provides a clean, fluent API for defining some Webpack build steps
 | for your Laravel applications. By default, we are compiling the CSS
 | file for the application as well as bundling up all the JS files.
 |
 */

mix.js('resources/js/app.js', 'public/js')
    .vue()
    .postCss('resources/css/app.css', 'public/css', [
        //
    ]);

P粉032900484P粉032900484279 天前393

全部回复(2)我来回复

  • P粉262073176

    P粉2620731762024-02-27 10:02:27

    您是否尝试过将刀片中的标签从 <Home /> 更改为 <home /> ? 正如另一个用户所写,您必须在导入组件的行中添加 .default

    回复
    0
  • P粉946336138

    P粉9463361382024-02-27 00:27:42

    由于我的分数,我无法发表评论,抱歉必须像遮阳篷一样做。


    您确定 app.component('home', Home); 行是导入 comp 的正确方法吗? 因为根据我的发现,这将是

    Vue.component('home', require('./components/Home.vue').default);

    就是这样。

    回复
    0
  • 取消回复