vue-cli3全面配置详解

vue-cli3全面配置详解

简介

vue-cli3是vue官方提供的脚手架工具,它可以帮助我们快速搭建一个vue项目框架,包含项目中所需的各种配置项。本文将对vue-cli3的全面配置进行详细讲解,帮助初学者快速上手。

安装

若未安装node.js和npm,需先安装node.js和npm,安装方法可参照官网

全局安装vue-cli3:

npm install -g @vue/cli

创建项目

使用vue-cli3创建一个项目:

vue create hello-world

其中hello-world为项目名称,创建后会自动在当前目录下创建一个名为hello-world的文件夹,其中包含初始化的vue项目。

配置

vue-cli3默认的配置文件为vue.config.js,如果创建项目时未生成,可以手动在项目根目录创建该文件。以下为常用的配置项:

publicPath

publicPath用于指定打包后的静态文件的部署路径,如果我们想指定打包后的文件部署在一个子目录下,可以设置该项。如下示例:

module.exports = {
  publicPath: '/my-project/'
}

assetsDir

assetsDir用于指定静态资源目录,默认值为assets。如果我们想将静态资源存放在一个子目录下,可以设置该项。如下示例:

module.exports = {
  assetsDir: 'static'
}

devServer

devServer用于配置开发服务器,常用的配置项有port(指定开发服务器的端口)、proxy(配置代理)等,如下示例:

module.exports = {
  devServer: {
    port: '8080',
    // 配置代理
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
}

chainWebpack

chainWebpack用于配置webpack链式操作,可以通过config.module.rule()方法添加loader,通过config.plugin()方法添加插件,如下示例:

module.exports = {
  chainWebpack: config => {
    // 添加loader
    config.module.rule('less')
      .test(/\.less$/)
      .use('less-loader')
        .loader('less-loader')
        .end()

    // 添加插件
    config.plugin('html')
      .tap(args => {
        args[0].title = 'My Title'
        return args
      })
  }
}

示例

示例一:部署到子路径下

vue.config.js中设置publicPath为我们想部署的子路径即可,如下所示:

module.exports = {
  publicPath: '/subdir/'
}

示例二:配置sass

使用sass-loadernode-sass即可配置sass,如下所示:

npm install --save-dev sass-loader node-sass

vue.config.js中添加以下代码:

module.exports = {
  chainWebpack: config => {
    // 添加sass-loader
    const oneOfsMap = config.module.rule('scss').oneOfs.store
    oneOfsMap.forEach(item => {
      item.use('sass-loader')
        .loader('sass-loader')
        .tap(options => ({
          ...options,
          prependData: '@import "~@/variables.scss";'
        }))
        .end()
    })
  }
}

总结

以上为vue-cli3的全面配置详解,本文提供了常用的配置项,并且提供了两个示例。希望本文能够帮助读者快速上手vue-cli3的配置。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue-cli3全面配置详解 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • Vue组件间数据传递的方式(3种)

    Vue组件间数据传递的方式有以下三种: 1. props 与 events 使用props将数据从父组件传递到子组件,使用events将数据从子组件传递到父组件。 父组件传递数据给子组件 在父组件中,可以通过在子组件中使用props属性传递数据。props属性是一个数组,其中包含子组件中要接收的属性名。 <template> <div&gt…

    Vue 2023年5月28日
    00
  • git hooks的作用及创建使用示例详解

    Git Hooks的作用及创建使用示例详解 Git Hooks是Git中一种有助于Git版本库操作自动化的工具,使用Git Hooks可以在提交、推送、合并等Git操作时执行一些自定义脚本,从而增强Git的功能和灵活性。 Git Hooks提供了多种类型的钩子,常用的有pre-commit、pre-push、pre-rebase、post-merge等,每个…

    Vue 2023年5月28日
    00
  • 详解vue-cli之webpack3构建全面提速优化

    标题 详解vue-cli之webpack3构建全面提速优化 简介 Vue-cli是Vue框架官方提供的脚手架工具,能够帮助我们快速搭建项目,减少开发成本。而webpack则是目前比较流行的打包工具。本攻略将介绍如何在Vue-cli中使用webpack3构建项目,并进行全面提速优化。 步骤 1. 安装vue-cli 首先,我们需要安装Vue-cli。在命令行中…

    Vue 2023年5月28日
    00
  • websocket在springboot+vue中的使用教程

    下面是关于使用WebSocket在Spring Boot和Vue中的完整攻略。 WebSocket 在 Spring Boot 和 Vue 中的使用教程 什么是 WebSocket? WebSocket 是 HTML5 提供的一种在单个 TCP 连接上进行全双工通讯的协议。WebSocket 使得客户端和服务器之间的数据交换变得更加简单、更便捷,且可以实现低…

    Vue 2023年5月28日
    00
  • vue中data里面的数据相互使用方式

    Vue是一款流行的前端框架。data对象是Vue组件中的一个非常重要的属性。在Vue组件中,我们可以定义数据、方法、计算属性等。data对象中定义的数据可以在Vue实例的模板中使用,也可以在Vue组件中的方法或计算属性中进行操作。 下面是在Vue中使用data里面的数据的几种方式: 直接使用 最基本的使用方法,就是在Vue实例或组件中使用this关键字直接访…

    Vue 2023年5月28日
    00
  • 解析vue data不可以使用箭头函数问题

    解析vue中的data不可以使用箭头函数问题,主要是因为箭头函数没有自己的上下文,而且 Vue 中传递给 data 的对象必须是可扩展的,以便在数据更新时进行响应。下面是该问题的解决攻略: 方法1:使用传统的函数 在Vue组件中,如果要解析data对象,应该在声明周期的created或mounted函数中使用传统的函数来定义data。如下所示: <te…

    Vue 2023年5月28日
    00
  • JS实现一个微信录音功能过程示例详解

    下面我就为大家详细讲解JS实现一个微信录音功能的完整攻略。 1. 首先明确需求 我们需要实现一个微信录音功能,用户可以通过点击按钮开启录音,并且能够获取录音的时长,以及上传录音文件到服务器进行存储。 2. 实现步骤 2.1 获取用户的授权 在微信中,需要获取用户授权才能使用麦克风进行录音。我们可以使用微信的wx.authorize接口来进行授权。具体代码如下…

    Vue 2023年5月28日
    00
  • ant design 日期格式化的实现

    Ant Design 日期格式化的实现 Ant Design 是蚂蚁金服开发的一套基于 React 的企业级 UI 组件库,其中包含了日期选择器和日期格式化工具。 日期格式化工具 Ant Design 中的日期格式化工具是基于 Moment.js 的 API 实现的。 Moment.js 是一个用于解析、验证、操作和显示日期以及时间的 JavaScript …

    Vue 2023年5月29日
    00
合作推广
合作推广
分享本页
返回顶部