详解如何创建基于vite的vue项目

 更新时间:2023年11月24日 14:43:41   作者:sumeng_meng  
vite 这个是尤大开发的新工具,目的是以后替代webpack,下面这篇文章主要给大家介绍了关于如何创建基于vite的vue项目的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下

一、环境

安装Node.js

Node.js环境可以使在系统上运行js代码

1.下载镜像文件:https://nodejs.org/download/release/v18.8.0/node-v18.8.0-x64.msi

2.按照安装向导完成node.js的安装

3.验证是否安装好:打开Windows的cmd命令行,输入npm --version,输出版本信息则安装成功,如下图所示

安装yarn工具

node.js自带npm包管理工具,yarn也是nodejs下的包管理工具,可以根据自身选择适合的工具

1.在cmd命令行输入:npm install yarn -g,进行全局安装

2.检验是否安装好:在cmd命令行中输入yarn -version,若输出版本信息则表示安装成功,如下图所示

二、创建项目

1.在想要创建项目的目录下进入命令行,输入:yarn create vite 项目名

选择框架:

选择属性:

 2.进入项目目录,输入:cd 项目名

3.安装依赖,输入:yarn

4.运行项目,输入:yarn dev --> 打开一个localhost:5173

5.将地址输入浏览器访问,下图为初始页面

三、项目目录梳理

项目初始目录结构

public静态资源(图片、js文件)目录
srcassets静态资源目录
components组件目录
main.js入口文件
App.vue根组件
node_modules项目依赖包
index.html默认vue的挂载元素
package.json当前项目基本信息、项目依赖信息、命令管理工具配置
vite.config.js整个项目的配置信息
yarn.lockyarn指令运行的时候记录的信息

项目加载过程

当使用yarn dev运行项目时,它会读取package.json文件中的scripts定义的命令去调用对应的指令

 然后会读取入口文件:src/main.js

  • 导入vue及自定义组件
  • 实例化一个Vue,并挂载app到index.html文件的id为app的元素上

四、集成UI组件库vant

配置按需加载Vant

1.安装模块

//安装vant
yarn add vant
//按需加载模块
yarn add unplugin-vue-components -D

2.在vite.config.js文件中配置按需加载

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import Components from 'unplugin-vue-components/vite'
import { VantResolver } from 'unplugin-vue-components/resolvers'
export default defineConfig({
        plugins: [
                vue(),
                Components({
                        resolvers: [VantResolver()],
                }),
        ],
});

使用组件

完成vant的安装与配置就可以直接在模板中使用Vant组件了unplugin-vue-components会解析模板并自动注册对应组件

Vant官方文档:https://vant-contrib.gitee.io/vant/#/zh-CN

在src/App.vue中使用组件 :

<template>
    <van-button type="primary">主要按钮</van-button>
</template>

引入函数组件的样式

Vant 中有个别组件是以函数的形式提供的,包括 ToastDialogNotify 和 ImagePreview 组件

在需要的位置导入并使用即可

// Toast
import { showToast } from 'vant';
import 'vant/es/toast/style';
// Dialog
import { showDialog } from 'vant';
import 'vant/es/dialog/style';
// Notify
import { showNotify } from 'vant';
import 'vant/es/notify/style';
// ImagePreview
import { showImagePreview } from 'vant';
import 'vant/es/image-preview/style';

五、集成UI组件库NutUI

配置按需加载NutUI

1.安装

yarn add @nutui/nutui

2.安装插件NutUI样式按需加载插件

yarn add consola
yarn add vite-plugin-style-import

3.在vite.config.js文件中配置NutUI样式按需加载

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import Components from 'unplugin-vue-components/vite'
import { VantResolver } from 'unplugin-vue-components/resolvers'

// add here
import { createStyleImportPlugin } from 'vite-plugin-style-import'

export default defineConfig({
    plugins: [
        vue(),
        Components({
            resolvers: [VantResolver()],
          }),
        // add here 
        createStyleImportPlugin({
                resolves: [{
                    libraryName: '@nutui/nutui',
                    libraryNameChangeCase: 'pascalCase',
                    resolveStyle: (name) => {
                    return `@nutui/nutui/dist/packages/${name.toLowerCase()}/index.scss`
                    },
                }]
        }),
    ],
    // add here 
    css: {
        preprocessorOptions: {
            scss: {
                // 配置 nutui 全局 scss 变量
                additionalData: `@import "@nutui/nutui/dist/styles/variables.scss";`
            }
        }
    },
})

使用组件

NutUI组件官方文档:https://nutui.jd.com/h5/vue/4x/#/zh-CN/component/button

NutUI不会像Vant一样自动导入,NutUI的按需自动加载只有样式文件,所以需要我们手动导入。

使用组件定义要加载的组件:

                在src下新建plugins/nutui.js,以后需要增加组件只需要在该文件中添加即可

//用于定义要加载的组件名
import {
    Button,
}from '@nutui/nutui'
//export导出,只有导出了,才能让别的文件进行import
export const nutUiComponents = [
    Button,
];

在src/main.js文件中导入

//添加导入
import { nutUiComponents } from './plugins/nutUI';
//基于App.vue(根组件)创建一个vue实例
const app = createApp(App)
//全局使用导入的NutUI组件
nutUiComponents.forEach((item)=>{
    app.use(item)
})
//把vue实例挂载到index.html => #app
app.mount('#app')

在根组件App.vue中使用

<template>
     <nut-button type="primary">主要按钮</nut-button>
</template>

六、常见错误

页面出现一片空白或页面无变化的解决措施:

代码有误时,运行yarn dev的时候会提示出来yarn dev为热加载不稳定,在命令行按Ctrl+c中断,重新yarn dev

总结

到此这篇关于如何创建基于vite的vue项目的文章就介绍到这了,更多相关创建vite的vue项目内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue中实现拖动调整左右两侧div的宽度的示例代码

    vue中实现拖动调整左右两侧div的宽度的示例代码

    这篇文章主要介绍了vue中实现拖动调整左右两侧div的宽度的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • vue2.0 路由模式mode=

    vue2.0 路由模式mode="history"的作用

    这篇文章主要介绍了vue2.0 路由模式mode="history"的作用,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2018-10-10
  • 基于vue.js实现侧边菜单栏

    基于vue.js实现侧边菜单栏

    这篇文章主要为大家详细介绍了基于vue.js实现侧边菜单栏的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Vue使用axios发送请求并实现简单封装的示例详解

    Vue使用axios发送请求并实现简单封装的示例详解

    这篇文章主要介绍了Vue使用axios发送请求并实现简单封装,主要包括安装axios及简单使用配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • VUE2旧项目重新安装依赖后@vue/compiler-sfc编译报错问题

    VUE2旧项目重新安装依赖后@vue/compiler-sfc编译报错问题

    在VUE2旧项目中重新安装依赖后,如果遇到@vue/compiler-sfc编译报错,首先需要检查package.json文件中的Vue版本是否升级到2.7版本,2.7版本的编译插件不再支持/deep/这种样式穿透,版本^和~的区别在于^只能锁住第一位数
    2025-01-01
  • Elementui按钮设置默认选中状态的实现过程

    Elementui按钮设置默认选中状态的实现过程

    这篇文章主要给大家介绍了关于Elementui按钮设置默认选中状态的实现过程,文中通过图文以及示例代码介绍的非常详细,对大家学习或者使用Elementui具有一定的参考学习价值,需要的朋友可以参考下
    2023-07-07
  • 快速将Vue项目升级到webpack3的方法步骤

    快速将Vue项目升级到webpack3的方法步骤

    这篇文章主要给大家介绍了关于如何快速将Vue项目升级到webpack3的方法步骤文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09
  • 关于vue-treeselect绑值、回显等常见问题的总结

    关于vue-treeselect绑值、回显等常见问题的总结

    这篇文章主要介绍了关于vue-treeselect绑值、回显等常见问题的总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 在Vue中进行性能优化的几种常用方法

    在Vue中进行性能优化的几种常用方法

    随着前端技术的飞速发展,Vue.js作为一个流行的JavaScript框架,已经被广泛应用于构建现代Web应用,然而,随着应用的复杂性和规模的增加,性能优化也成为开发者必须面对的重要任务,在本篇博客中,我们将探讨几种常用的Vue性能优化方法,需要的朋友可以参考下
    2024-12-12
  • Vue.js中自定义Markdown插件实现References解析(推荐)

    Vue.js中自定义Markdown插件实现References解析(推荐)

    本文主要写的是,如何编写一个插件来解析<references>标签,并将其转换为HTML,这种方法可以应用于其他自定义标签和功能,为Vue.js应用程序中的Markdown渲染提供了极大的灵活性,感兴趣的朋友跟随小编一起看看吧
    2024-07-07

最新评论