search

Home  >  Q&A  >  body text

@vitejs/plugin-vue cannot be installed in Laravel project

I created a new Laravel project. In order to use Vue JS, I tried to install this package,

@vitejs/plugin-vue

But this gave me a series of errors,

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR! 
npm ERR! While resolving: @vitejs/plugin-vue@3.0.0
npm ERR! Found: vite@2.9.14
npm ERR! node_modules/vite
npm ERR!   dev vite@"^2.9.11" from the root project
npm ERR!   peer vite@"^2.9.9" from laravel-vite-plugin@0.4.0
npm ERR!   node_modules/laravel-vite-plugin
npm ERR!     dev laravel-vite-plugin@"^0.4.0" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer vite@"^3.0.0" from @vitejs/plugin-vue@3.0.0
npm ERR! node_modules/@vitejs/plugin-vue
npm ERR!   @vitejs/plugin-vue@"^3.0.0" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: vite@3.0.0
npm ERR! node_modules/vite
npm ERR!   peer vite@"^3.0.0" from @vitejs/plugin-vue@3.0.0
npm ERR!   node_modules/@vitejs/plugin-vue
npm ERR!     @vitejs/plugin-vue@"^3.0.0" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

I followed the steps below,

1.laravel new {proj_name}.



2. npm install vue@next.



3. npm install.



4. After that I created a vue file and imported into app.js (resources/js/app.js).



5. I went to the blade file and cleared all -> hit `!` for emmet snippet, created a div with id #app, and add
    @vite('resources/js/app.js').

I threw an error saying install @vitejs/plugin-vue. But when I try to install it, it throws these errors.

P粉070918777P粉070918777459 days ago842

reply all(2)I'll reply

  • P粉593536104

    P粉5935361042023-11-02 10:20:03

    If anyone else encounters this issue, please add it directly to your package.json and run npm i:

    "@vitejs/plugin-vue":"^3.0.1"

    reply
    0
  • P粉864872812

    P粉8648728122023-11-02 00:50:09

    npm install vue@next vue-loader@next
    npm i @vitejs/plugin-vue@2.3.3
    composer require innocenzi/laravel-vite:0.2.*
    npm i -D vite vite-plugin-laravel

    vite.config.js

    import { defineConfig } from 'vite'
    import vue from '@vitejs/plugin-vue'
    import laravel from 'vite-plugin-laravel'
    
    export default defineConfig({
        plugins: [
            vue(),
            laravel({
            input: [
                'resources/css/app.css',
                'resources/js/app.js',
            ],
            refresh: true,
        })
        ]
    })

    Maybe you need to change app.js

    import {createApp} from 'vue/dist/vue.esm-bundler.js';

    Or add defineAsyncComponent

    for asynchronous components
    import {createApp, defineAsyncComponent} from 'vue/dist/vue.esm-bundler.js';

    @vite() Leave blank

    reply
    0
  • Cancelreply