laravel 9教程中的Vue 3集成未正常工作

hmtdttj4  于 2022-11-30  发布在  Vue.js
关注(0)|答案(1)|浏览(125)

我在使用Laravel之前做过项目,但是这次我决定在我的项目中使用Vue.js作为我的前端,我正在寻找一些教程来看看我如何在我的Laravel项目中集成Vue.js。我尝试了几个教程,所以我将只使用talk about the last tutorial i tried
首先我添加了依赖项,我的package.json文件看起来像这样

  1. "devDependencies": {
  2. "axios": "^1.1.2",
  3. "laravel-vite-plugin": "^0.7.1",
  4. "lodash": "^4.17.19",
  5. "postcss": "^8.1.14",
  6. "vite": "^3.2.4"
  7. },
  8. "dependencies": {
  9. "@vitejs/plugin-vue": "^3.2.0",
  10. "vue": "^3.2.36",
  11. "vue-loader": "^17.0.1"
  12. }

我将vite.config.js文件更新为如下所示

  1. import { defineConfig } from 'vite';
  2. import laravel from 'laravel-vite-plugin';
  3. import vue from '@vitejs/plugin-vue';
  4. export default defineConfig({
  5. plugins: [
  6. vue(),
  7. laravel({
  8. input: ['resources/css/app.css', 'resources/js/app.js'],
  9. refresh: true,
  10. }),
  11. ],
  12. });

在resources/js中,我创建了一个名为components的文件夹,并在其中创建了app.vue,其中包含我想用于第一次测试的模板。

  1. <template>
  2. <h1>Laravel 9 with Vue integration, with vite</h1>
  3. </template>

在resources/js中,我更新了我的app.js,使其看起来如下所示

  1. import './bootstrap';
  2. import { CreateApp } from 'vue';
  3. import app from './components/app.vue';
  4. CreateApp(app).mount('#app');

最后在我的blade文件welcome.blade.php上我这样更新了它

  1. <!DOCTYPE html>
  2. <html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1">
  6. <title>Laravel</title>
  7. <!-- Fonts -->
  8. <link href="https://fonts.bunny.net/css2?family=Nunito:wght@400;600;700&display=swap" rel="stylesheet">
  9. @vite('resources/css/app.css')
  10. </head>
  11. <body>
  12. <div id='app'></div>
  13. @vite('resources/js/app.js')
  14. </body>
  15. </html>

在做了这些之后,我让npm运行dev,然后运行通常的php artisan serve。然而,我在app.vue文件上创建的模板没有显示。我尝试了几个教程,我遇到了同样的问题。出于好奇,因为我也在我的blade文件上使用了css文件的@vite,我试着改变css.文件的背景颜色,结果成功了,所以我不知道为什么我的模板没有显示
提前感谢您
最新消息:
发现我得到这个错误,当我检查
未捕获的语法错误:请求的模块“/node_modules/.vite/deps/vue.js?v= d 69 a4051”未提供名为“CreateApp”的导出(位于app.js:3:10)
我还在努力寻找解决办法

5cnsuln7

5cnsuln71#

找到了一个修复这个(愚蠢的一个)我的问题是在我的app.js文件
当然,CreateApp并不存在。我错误地用大写字母开头,但它被写成了“createApp”。

相关问题