Vue-Loader 打包单文件组件实战

本文是我在学习过程中记录学习的点点滴滴,目的是为了学完之后巩固一下顺便也和大家分享一下,日后忘记了也可以方便快速的复习。

Vue-Loader 打包单文件组件

  • 前言
  • 一、webpack 结合 Vue-Loader 打包单文件组件基本认识
    • 1.1、什么是单文件组件
    • 1.2、什么是 Vue-Loader
    • 1.3、手动配置 webpack 集成 vue-loader
    • 1.4、创建单文件组件
    • 1.5、在 main.js 文件中把 Hello.vue 当做一个模块引入
    • 1.6、查看打包后的代码
    • 1.7、创建单文件组件(.vue)的快捷方法
  • 二、webpack 结合 Vue-Loader 打包单文件组件实战
    • 2.1、项目结构
    • 2.2、下载安装 vue,这里指定版本
    • 2.3、如何引用 vue 文件【编写 main.js 文件代码】
    • 2.4、打包项目 npm start
    • 2.5、运行 index.html
    • 2.6、解决组件内容没有渲染出来
  • 三、持续改进——采用 render 函数渲染组
    • 3.1、总结上面 2 种解决子组件内容没有渲染出来的方案
    • 3.2、改进 main.js
    • 3.3、注释掉 main.js 中的下面的引入完整版的 vue.js 代码
    • 3.4、打包运行测试
    • 3.5、采用箭头函数优化下 render 函数
  • 四、完善改进——丰富 Vue 单文件组件
    • 4.1、新建子组件(也是单文件组件)
    • 4.2、在根组件 App.vue 中引入子组件
    • 4.3、打包浏览测试
    • 4.4、丰富下 App.vue组件
  • 五、webpack 模块热替换(HMR)(局部更新)
    • 5.1、模块热替换
    • 5.2、启用 HRM 步骤
      • 5.2.1、安装 webpack-dev-server
    • 5.3、配置 webpack.config.js
    • 5.4、测试效果


前言

今天学习的主要是关于webpack 结合 Vue-loader 来打包 Vue 单文件组件知识的理解和应用。主要内容包括什么是单文件组件、vue-loader 是什么,单文件组件结构及代码编写,利用 Vue-Loader 打包单文件组件,为什么要采用 render 函数来渲染,webpack 模块热替换(HMR)如何启用及使用。


一、webpack 结合 Vue-Loader 打包单文件组件基本认识

总结:
1、.vue文件是一个个的组件,里面的是被template标签包裹的内容,且template只能有一个子标签,但是可以有无数个孙标签。
2、安装好vue-loader 和 vue-template-compiler两个后需要在webpack.config.js配置相关信息,导入插件、实例化插件、配置规则。
3、需要把vue文件当作模块引入到main.js中然后打包运行。

1.1、什么是单文件组件

引出问题:
前 面 创 建 组 件 通 过 Vue.component ( 全 局 组 件 ) 或
compontents 选项(局部组件),并且写在 html 文件中的 js 部分,小规模项目这样写没问题,但是项目大这样很多组件全部写在一个html 文件中就非常不好。因此我们希望能够把组件内容单独提出来,后续需要使用组件把它作为模块去引入就好。

因 此 , vue 为 我 们 提 供 了 单 文 件 组 件 ( single-file
components):就是一种扩展名为 .vue 的文件,是 vue.js 自定义的一种文件格式,在文件内可以封装组件相关的 html、css、js。也就是说一个 vue 文件由三部分组成: