IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 初学wbepack(3)配置Vue -> 正文阅读

[JavaScript知识库]初学wbepack(3)配置Vue

webpack

Vue入门配置

目录结构

请添加图片描述

沿用了上一节的整个项目

1、npm安装

vue进入单独的项目,这时vue就相当于一个模块。

npm install vue

-dev为仅开发时依赖,而vue在项目执行时也需要依赖,所以不使用。

v14.16.1的node安装vue时默认为--save,因此也不需要添加。

请添加图片描述

刷新目录,会在node_modules文件夹下生成一个vue文件夹。

2、在main.js中引入vue并编写模板

请添加图片描述

  • 在开发时我们遵循只保留index.html一个html文件,所以在index中只含有bundle.js的引入和一个<div id=app></div>,具体内容由vue的template控制。

3、修改webpack.config.js

添加resolve,添加别名alias,引入完整版的vue。

默认import的vue为阉割版,不支持编译模板,需要修改路径引入vue.esm.js

参考官网安装 — Vue.js (vuejs.org)

在这里插入图片描述

4、打包,成功配置

请添加图片描述

成功显示{{message}}的值‘’Hello World‘’

Vue进阶配置

  • 将组件的模板、script、stlye部分抽离到独立的.vue文件

在src文件夹下创建vue文件夹,新建App.vue

请添加图片描述

内容如图

请添加图片描述

template中为模板Html结构,script中填写data,methods等,style中添加样式。

在main.js中引入

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

new Vue({
 el: '#app',
 template: '<App/>',
 components:{
  App
 }
})

在index.html中只需要添加

请添加图片描述

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

安装相关loader

`请添加图片描述

npm install vue-loader@14 vue-template-compiler --save-dev
`
请添加图片描述

  • 当前最新版本为vue-loader 15,需要配置VueLoaderPlugin,但我尝试了多次都报错

    The compilation argument must be an instance of Compilation

    应该是版本问题,求大神解答。因此先使用v14版本。

配置webpack.config.js

添加module.exports的module的rules

{
    test:/\.vue$/i,
    use:['vue-loader']  //处理 .vue 文件的 loader
}

打包

npm run build

请添加图片描述

成功显示出了hello vue


通过Vue文件添加子组件

创建Cpn.vue文件存放子组件

请添加图片描述

在App.vue文件中引入并调用Cpn子组件

  • 在script中引入

    import Cpn from './Cpn.vue'

  • 在export default{}中注册子组件

    components:{
    
      Cpn
    
     }
    
  • 在template的div中引入<Cpn></Cpn>

    这里的Cpn标签只能放在div内部

    内容如下:

    <template>
      <div>
        <h1>{{message}}</h1>
        <p>App.vue模板范围</p>
        <Cpn></Cpn>
      </div>
    </template>
    
    <script>
    import Cpn from './Cpn.vue'
    
    export default {
      name: 'App',
      components:{
        Cpn
      },
      data() {
        return {
          message: 'hello vue'
        };
      }
    };
    </script>
    
注意:vue文件的style标签如果有lang="scss",先删除,只用普通css样式即可。

打包

请添加图片描述

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-22 14:04:22  更:2021-07-22 14:07:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/6 9:55:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码