webpack+vue2构建vue项目骨架的方法

以webpack为工具、vue2为框架,构建vue项目骨架的方法如下:

一、搭建基本环境

1.1 初始化项目

首先,进入控制台,输入以下命令初始化项目:

npm init

在初始化的过程中,我们需要输入基本项目信息,如项目名称、版本等。初始化完成后,会生成一个 package.json

1.2 安装webpack

在控制台输入以下命令安装webpack:

npm install webpack webpack-cli --save-dev

1.3 安装vue2

在控制台输入以下命令安装vue2:

npm install vue

二、配置webpack

2.1 创建webpack配置文件

在项目根目录下创建一个名为 webpack.config.js 的文件,并进行以下配置:

const path = require('path');
const VueLoaderPlugin = require('vue-loader/lib/plugin')

module.exports = {
    entry: './src/main.js',
    output: {
        filename: 'bundle.js',
        path: path.resolve(__dirname, 'dist')
    },
    module: {
        rules: [
            {
                test: /\.vue$/,
                loader: 'vue-loader'
            },
            {
                test: /\.js$/,
                exclude: /node_modules/,
                loader: 'babel-loader'
            },
            {
                test: /\.css$/,
                use: ['style-loader', 'css-loader']
            }
        ]
    },
    plugins: [
        new VueLoaderPlugin()
    ]
};

2.2 配置loader

在配置文件中增加 rules 属性,用于处理 .vue 文件、ES6语法和样式文件:

module: {
    rules: [
        {
            test: /\.vue$/,
            loader: 'vue-loader'
        },
        {
            test: /\.js$/,
            exclude: /node_modules/,
            loader: 'babel-loader'
        },
        {
            test: /\.css$/,
            use: ['style-loader', 'css-loader']
        }
    ]
}

以上配置中,vue-loader 主要用于处理 .vue 文件;babel-loader 主要用于兼容 ES6 语法;style-loadercss-loader 用于处理样式文件。

2.3 配置插件

在配置文件中增加 plugins 属性,用于解析 .vue 文件:

const VueLoaderPlugin = require('vue-loader/lib/plugin')

plugins: [
    new VueLoaderPlugin()
]

2.4 配置开发环境

增加开发环境的配置,将 webpack-dev-serverhtml-webpack-pluginclean-webpack-plugin 安装为开发模式下的依赖包:

npm install webpack-dev-server html-webpack-plugin clean-webpack-plugin --save-dev

配置 webpack-dev-server

devServer: {
    contentBase: path.resolve(__dirname, 'dist'),
    open: true,
    hot: true,
    port: 3000
}

plugins 中配置 html-webpack-plugin

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

plugins: [
    new HtmlWebpackPlugin({
        template: './index.html'
    }),
    new VueLoaderPlugin()
]

同时,在 config 中增加 mode 属性,指定为 development 模式:

mode: 'development'

2.5 配置生产环境

scripts 中定义一个 build 命令,用于生产构建:

"scripts": {
    "build": "webpack --mode production"
}

同时,安装 copy-webpack-plugin

npm install copy-webpack-plugin --save-dev

plugins 中增加 copy-webpack-plugin

const CopyWebpackPlugin = require('copy-webpack-plugin')

plugins: [
    new HtmlWebpackPlugin({
        template: './index.html'
    }),
    new VueLoaderPlugin(),
    new CopyWebpackPlugin([
        { from: './src/assets', to: 'assets' }
    ])
]

此处使用 copy-webpack-pluginsrc/assets 文件夹下的静态资源复制到 dist/assets 文件夹中。

三、创建项目目录

3.1 创建src目录

在项目的根目录下创建一个名为 src 的目录,用于存放开发时的源文件。

3.2 创建main.js文件

在src目录下创建一个名为 main.js 的入口文件,用于引入vue入口文件和要渲染的组件,无需挂载DOM,如:

import Vue from 'vue';
import App from './App.vue';

new Vue({
  render: h => h(App),
}).$mount('#app');

3.3 创建App.vue文件

在src目录下创建一个名为 App.vue 的组件文件,用于渲染整个页面,如:

<template>
  <div id="app">
    <h1>{{ message }}</h1>
  </div>
</template>

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

<style scoped>
h1 {
    color: #42b983;
}
</style>

四、测试运行

安装vue-loader和css-loader:

npm i vue-loader css-loader --save-dev

index.html 文件中,增加一个 id 值为 appdiv 元素,以供 main.js 文件挂载 Vue 实例的根节点:

<body>
  <div id="app"></div>
</body>

此时,在控制台输入以下命令可以开启开发服务器:

npx webpack-dev-server

启动成功后,在浏览器中输入 http://localhost:3000 访问应用,应该可以看到页面渲染出 Hello World!

以上即为使用webpack和vue2构建vue项目骨架的方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:webpack+vue2构建vue项目骨架的方法 - Python技术站

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

相关文章

  • Vue3之路由跳转与参数获取方式

    下面是关于Vue3路由跳转与参数获取的完整攻略。 1. 安装Vue Router 在开始使用Vue3路由时,需要先安装Vue Router。可以通过npm安装,命令如下: npm install vue-router@4.0.0-beta.8 安装完成后,在main.js中引入Vue Router并使用。 import { createRouter, cre…

    Vue 2023年5月27日
    00
  • Vue动态扩展表头的表格及数据方式(数组嵌套对象)

    下面我会详细讲解“Vue动态扩展表头的表格及数据方式(数组嵌套对象)”的完整攻略。 介绍 在Vue框架中,我们经常需要用到表格组件。而有些情况下,我们需要动态扩展表格的表头,并且表格数据是数组嵌套对象的形式。这时,我们需要采用一定的技巧来实现这一功能。 实现步骤 安装依赖 首先,我们需要安装element-ui组件库,以及vue-router和axios等常…

    Vue 2023年5月28日
    00
  • Vue.js中安装一个路由器demo

    Vue.js是一款轻量、高效的渐进式JavaScript框架,它可以帮助我们快速进行前端开发。在Vue.js中,使用路由器来管理跳转流程是非常常见的方式。在本文中,我将为大家分享安装一个Vue.js路由器demo的完整攻略。 创建一个Vue.js项目 首先,我们需要创建一个Vue.js项目。在命令行中输入以下命令,即可创建一个名为“my-project”的V…

    Vue 2023年5月27日
    00
  • Vue 3.0 前瞻Vue Function API新特性体验

    以下是关于“Vue 3.0 前瞻Vue Function API新特性体验”的详细攻略。 什么是Vue Function API? Vue Function API是指在Vue.js 3.0中引入的一组全新的API,它们的设计目标是更好地解决组件库编写过程中出现的一些问题,如代码的可维护性、组件之间的通信以及更好的类型支持等。Vue Function API…

    Vue 2023年5月28日
    00
  • Vue局部组件数据共享Vue.observable()的使用

    Vue 是一个非常好用的 JavaScript 前端框架,而组件数据共享是 Vue 中非常常见的需求。Vue.observable() 可以用于将任意一个普通对象转化成响应式的对象,从而实现对该对象的数据共享和观测。下面提供关于Vue局部组件数据共享Vue.observable()的使用的攻略。 目录 Vue.observable() 简介 在 Vue 组件…

    Vue 2023年5月28日
    00
  • 移动端调试神器vConsole使用详解

    我们来详细介绍一下“移动端调试神器vConsole使用详解”的完整攻略。 一、vConsole是什么? vConsole是一款专为移动端开发者设计的前端调试工具。它可以在移动端页面中弹出一个虚拟的控制台,帮助开发者方便地查看页面的错误信息,进行调试和测试。 二、使用vConsole 2.1 引入vConsole 在head标签中引入vConsole的css,…

    Vue 2023年5月27日
    00
  • Vue编译器AST抽象语法树源码分析

    一、概述 Vue是一个流行的JavaScript框架,通过它可以方便地构建可伸缩的单页面应用程序,能够帮助我们快速构建高效且易于维护的Web应用系统。在Vue中,模板被转换成一个抽象语法树(AST),这个AST是通过Vue编译器(parser)将模板代码转换而来的。AST通过获取DOM节点,识别出语言特定的标记和元素,自动创建了一个基于对象表示代码的结构树。…

    Vue 2023年5月27日
    00
  • Vue路由vue-router用法讲解

    首先需要明确的是Vue Router是Vue.js官方的路由管理器,用于实现单页应用(SPA)的路由功能。下面我将详细讲解Vue Router的用法。 一、Vue Router的基本使用 1. 安装 使用Vue Router需要先安装它。可以通过以下命令行安装最新版本的Vue Router: npm install vue-router 安装完成后,在需要使…

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