Vue学习笔记——前端工程化
目标:
ES6模块化
模块化: 就是把单独的一个功能封装到一个模块(文件)中,模块之间相互隔离,但是可以通过特定的接口公开内部成员,也可以依赖别的模块。
ES6 模块化的基本语法
按需导入 与 按需导出
这个时候 导入的名称不可以随意取,要与你导出的名字一致
2. webpack (小demo)
webpack的基本使用
1. 创建列表隔行变色项目
- 新建项目空白目录,并运行 npm init -y 命令,初始化 包管理配置文件 package.json
- 新建 src 源代码目录
- 新建 src -> index.html 首页
- 初始化首页基本的结构
- 运行 npm install jquery -s 命令,安装jQuery
- 通过模块化的形式,实现列表隔行变色效果
2. 在项目中安装和配置 webpack
- 运行 npm install webpack webpack-cli -D 命令,安装webpack 相关的包
- 在项目根目录中,创建名为 webpack.config.js 的 webpack 配置文件
- 在 webpack 的配置文件中,初始化如下基本配置
module.exports = {
mode:'development' // mode 用来指定 构建模式 ()
}
- 在package.json 配置的文件中的 scripts 节点下,新增 dev 脚本如下:
"scripts":{
"dev":"webpack" // script 节点下的脚本,可以通过 npm run 执行
}
- 在终端中运行 npm run dev 命令,启动 webpack 进行项目打包
3. 配置打包的入口与出口
webpack 的 4.x 版本中默认约定:
- 打包的入口文件为 src ->index.js
- 打包的输出文件为 dist ->main.js
如果要修改打包的入口与出口,可以在webpack.config.js中新增如下配置信息
const path = require('path') // 导入 node.js 中专门操作路径的模块
module.exports = {
entry:path.join(__dirname,'./src/index.js'), // 打包入口文件的路径
output:{
path:path.join(__dirname,'./dist'), // 输出文件的存放路径
filename:'bundle.js' // 输出文件的名称
}
}
4. 配置 webpack 的自动打包功能
- 运行 npm install webpack-dev-server -D 命令,安装支持项目自动打包的工具
- 修改 package.json -> scripts 中的 dev 命令如下:
"scripts":{
"dev":"webpack-dev-server"
}
- 将 src -> index.html 中, script 脚本的引用路径,修改为 /bundle.js
- 运行 npm run dev 命令,重新进行打包
- 在浏览器中访问 http://localhost:8080 地址,查看自动打包效果
注意:
- webpack-dev-server 会启动一个实时打包的 http 服务器
- webpack-dev-server 打包生成的输出文件,默认放到了项目根目录中,但是 是虚拟的、看不见的
5. 配置 html-webpack-plugin 生成浏览页面
- 运行 npm install html-webpack-plugin -D 命令,安装生成浏览页面的插件
- 修改 webpack.config.js 文件头部区域,添加如下配置信息:
// 导入生成浏览页面的插件,得到一个构造函数
const HtmlWebpackPlugin = require('html-webpack-plugin')
const htmlPlugin = new HtmlWebpackPlugin({
//创建插件的实例对象
template:'./src/index.html', // 指定要用到的模板文件
filename:'index.html' //指定生成的文件的名称,该文件存在于内存中,且目录中不显示
})
- 修改 webpack.config.js 文件中向外暴露的配置对象,新增如下配置节点:
module.exports = {
plugins:[htmlPlugin] // plugins 数组是 webpack 打包期间会用到的一些插件列表
}
6.配置自动打包的相关参数
package.json 中的配置
// --open 打包完成后自动打开浏览页面
// --host 配置 IP 地址
// --port 配置端口
" scripts " : {
" dev " : " webpack-dev-server --open --host 127.0.0.1 --port 8888"
}
webpack 中的加载器
通过 loader 打包非 js 模块
Vue 单文件组件
3.1 Vue 单文件组件的基本用法
1. 单文件组件的组成结构
.vue的单文件组件
- template 组件的模板区域
- script 业务逻辑区域
- style 样式区域
为每一个style添加 scoped指令 从而防止样式之间的冲突问题
Vue 脚手架的基本用法
基于 3.x 版本的脚手架创建vue项目
空格为选中、回车为下一步
bable、router、link/format、配置文件
关于文件夹:
assets—可能会用到的一些资源(样式表、图片)
views—是一些相关的视图组件
App.vue—项目根组件(承载项目组件中所有组件中的一个根组件)
main.js—项目的打包入口文件
安装好element 插件后对插件进行配置,配置成按需导入