使用Webpack 搭建 Vue3 开发环境过程详解

使用Webpack搭建Vue3开发环境的过程可以分为以下几个步骤:

1.安装Webpack和Vue3依赖

在开始使用Webpack搭建Vue3开发环境之前,我们需要先安装Webpack和Vue3的相关依赖。

Webpack是一个打包工具,可以将多个JavaScript、CSS、HTML等文件打包成一个或多个JavaScript文件。在搭建Vue3开发环境时,我们需要使用Webpack来打包Vue3的代码。

安装Webpack可以使用npm命令行工具进行安装:

npm install webpack webpack-cli --save-dev

Vue3依赖使用npm命令行安装:

npm install vue@next --save

2. 配置Webpack

在安装完成Webpack和Vue3的相关依赖后,我们需要对Webpack进行配置,以实现对Vue3代码的打包。

在项目根目录下新建一个webpack.config.js文件,并添加以下代码:

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin')

module.exports = {
  mode: 'development',
  entry: './src/main.js',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js'
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: 'public/index.html'
    })
  ]
};

上述代码中配置了Webpack的入口文件和输出文件夹、插件以及其他相关的配置项。其中,mode设置为development,表示开发模式;entry指定项目的入口文件;output指定打包后的文件输出路径和文件名;plugins是一个数组类型,里面包含多个插件,示例中添加了HtmlWebpackPlugin插件。

3. 配置Babel

由于Vue3代码是使用最新的ECMAScript语法编写的,在一些浏览器上可能无法正常运行。为了解决这个问题,我们需要对Vue3代码进行转换,将其转换成兼容性更好的ES5语法。

在安装完成Webpack和Vue3的相关依赖后,我们还需要安装Babel以将Vue3的代码转换成ES5语法。可以使用npm命令行进行安装:

npm install @babel/core @babel/preset-env babel-loader --save-dev

然后在webpack.config.js文件中添加如下代码:

module: {
  rules: [
    {
      test: /\.js$/,
      loader: "babel-loader",
      exclude: /node_modules/,
      options: {
        presets: ["@babel/preset-env"]
      }
    }
  ]
}

上述代码中配置了Babel的转换规则,将所有.js文件转换成兼容性更好的ES5语法。

4. 配置Vue3

最后,我们还需要配置Vue3的引入和使用。我们可以在项目根目录下的index.html文件中添加Vue3的引用:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Vue3 Webpack Demo</title>
</head>
<body>
  <div id="app"></div>
  <script src="./bundle.js"></script>
</body>
</html>

并在src/main.js文件中添加以下代码:

import { createApp } from 'vue'
import App from './App.vue'

createApp(App).mount('#app')

上述代码中,我们使用createApp函数创建一个Vue实例,并将其挂载到id为app的DOM元素上。同时,我们还要确保App.vue文件已经创建。

示例一

一个完整的Webpack+Vue3示例代码如下,可供参考:

webpack.config.js:

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin')

module.exports = {
  mode: 'development',
  entry: './src/main.js',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js'
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: 'public/index.html'
    })
  ],
  module: {
    rules: [
      {
        test: /\.js$/,
        loader: "babel-loader",
        exclude: /node_modules/,
        options: {
          presets: ["@babel/preset-env"]
        }
      },
      {
        test: /\.vue$/,
        loader: 'vue-loader'
      }
    ]
  },
  resolve: {
    alias: {
      'vue$': 'vue/dist/vue.esm.js'
    }
  }
};

App.vue

<template>
  <div>
    <h1>Hello World!</h1>
  </div>
</template>

<script>
export default {
  name: 'App',
  data() {
    return {
      message: 'Hello World!'
    }
  }
}
</script>

<style>
h1 {
  font-size: 4em;
  text-align: center;
  color: #42b983;
}
</style>

main.js

import { createApp } from 'vue'
import App from './App.vue'

createApp(App).mount('#app')

package.json

{
  "name": "vue3-webpack-demo",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "dev": "webpack serve --mode development",
    "build": "webpack --mode production"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "@babel/core": "^7.12.16",
    "@babel/preset-env": "^7.12.16",
    "babel-loader": "^8.2.2",
    "html-webpack-plugin": "^5.1.0",
    "vue-loader": "^16.0.0-beta.5",
    "webpack": "^5.21.2",
    "webpack-cli": "^4.5.0",
    "webpack-dev-server": "^3.11.2"
  },
  "dependencies": {
    "vue": "^3.0.5"
  }
}

index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Vue3 Webpack Demo</title>
</head>
<body>
  <div id="app"></div>
  <script src="./bundle.js"></script>
</body>
</html>

示例二

我们也可以使用Vue CLI脚手架来搭建Vue3开发环境。首先安装Vue CLI:

npm install -g @vue/cli

然后,在命令行中执行下面的命令,即可创建一个默认的Vue3项目:

vue create my-project

完成安装后,我们可以使用下面命令启动开发服务器:

npm run serve

结束语

以上就是使用Webpack搭建Vue3开发环境的详细攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Webpack 搭建 Vue3 开发环境过程详解 - Python技术站

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

相关文章

  • vue的diff算法知识点总结

    下面是针对“vue的diff算法知识点总结”的完整攻略。 什么是Vue的diff算法 Vue.js是一种高效的UI框架,它利用Virtual DOM(虚拟DOM)技术来实现快速渲染和更新视图。而Vue的diff算法就是为了在Virtual DOM的基础上,更高效地进行视图更新而设计的。 Vue的diff算法的主要思路 Vue的diff算法主要采用的是“先序深…

    Vue 2023年5月27日
    00
  • vue-next/runtime-core 源码阅读指南详解

    首先,需要明确阅读 vue-next/runtime-core 源码的目的是为了深入理解 Vue 3 的核心概念及其实现细节。这篇指南将带领读者了解该源码库的组织结构、核心模块的职责和交互关系,并给出示例代码帮助读者理解。以下是该指南的主要内容: 一、源码结构 入口文件:index.ts renderer 目录:处理组件的编译和渲染 reactivity 目…

    Vue 2023年5月27日
    00
  • Promise改写获取萤石云直播地址接口示例

    下面是关于“Promise改写获取萤石云直播地址接口示例”的完整攻略: 什么是Promise Promise是一种基于回调函数的异步编程解决方案,可以简化嵌套回调函数的代码,使异步代码更易读、更易维护和扩展。 要理解Promise的运作流程,需要了解Promise有三种状态:Pending(进行中)、Fulfilled(已完成)和Rejected(已失败)。…

    Vue 2023年5月28日
    00
  • Vue实现预览文件(Word/Excel/PDF)功能的示例代码

    下面是Vue实现预览不同类型文件的示例代码的完整攻略: 1. 准备工作 在Vue的项目中,要实现文件预览功能,需要安装和引用一些第三方库:- file-saver库,用于在前端将文件保存到本地;- axios库,用于发送请求到后端获取文件数据;- jszip库,用于解压缩zip文件;- pdf.js库,用于预览PDF文件。 可以使用npm来安装这些库: np…

    Vue 2023年5月28日
    00
  • Vue指令指令大全

    Vue指令是Vue.js的核心特性之一,为Vue.js提供了非常灵活和强大的操作DOM的能力。下面是Vue.js中常用的指令指令: v-text 指令格式:v-text 功能:用于在元素中输出文本内容,和插值表达式{{}}相同 示例: <!– Vue实例 –> <div id="app"> <p v-te…

    Vue 2023年5月27日
    00
  • 解决antd datepicker 获取时间默认少8个小时的问题

    当使用antd datepicker组件时,如果直接获取时间,会发现时间与当前时间相比,会少了8个小时。这是因为在时间日期的传递和展示过程中,涉及到时区的转换问题。下面我将详细介绍解决此问题的完整攻略。 问题背景 当我们使用antd datepicker组件获取时间的时候,可能会发现控制台打印出来的时间有8个小时的差异。原因是在传递与展示时遇到时区转换问题。…

    Vue 2023年5月29日
    00
  • vue上传文件formData入参为空,接口请求500的解决

    针对”vue上传文件formData入参为空,接口请求500″这一问题,可以按照以下步骤来进行排查和解决: 1.确保上传接口正确 首先需要确认上传接口是否能够正常处理上传请求,可以使用其他工具或方式来简单测试上传接口是否正常。如果上传接口正确无误,那么可以继续下一步排查。 2.确认请求头信息 当使用formData方式上传文件时,需要设置请求头信息,其中包括…

    Vue 2023年5月28日
    00
  • 关于vue src路径动态拼接的小知识

    首先我们需要了解一下Vue中app的文件结构。在默认情况下,我们会在src目录下创建一个main.js的文件作为vue应用的入口文件。 在Vue中,我们可以使用相对路径引入我们的组件等资源,如: import App from "./components/App.vue"; 但是,由于在不同的环境下,我们的文件路径可能会发生变化,所以我们…

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