1、Vue 单文件组件

1.1 传统组件的问题和解决方案

(1) 问题

  1. 全局定义的组件必须保证组件的名称不重复。
  2. 字符串模板缺乏语法高亮,在 HTML 有多行的时候,需要用到丑陋的 \ 。
  3. 不支持 CSS 意味着当 HTML 和 JavaScript 组件化时,CSS 明显被遗漏。
  4. 没有构建步骤限制,只能使用 HTML 和 ES5 JavaScript,而不能使用预处理器(如:Babel)。

(2)解决方案

针对传统组件的问题,Vue 提供了一个解决方案 —— 使用 Vue 单文件组件。

1.2 Vue 单文件组件的基本用法

单文件组件的组成结构:

  • template :组件的模板区域 。
  • script :业务逻辑区域 。
  • style :样式区域。
<template>
	<!-- 这里用于定义Vue组件的模板内容 -->
</template>

<script>
	// 这里用于定义Vue组件的业务逻辑
	export default {
		data() { return {} }, // 私有数据
		methods: {} // 处理函数
		// ... 其它业务逻辑
	}
</script>

<style scoped>
	/* 这里用于定义组件的样式 */
</style>

1.3 webpack 中配置 vue 组件的加载器

① 运行 npm i vue-loader vue-template-compiler -D 命令。

② 在 webpack.config.js 配置文件中,添加 vue-loader 的配置项如下:

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

module.exports = {
	module: {
		rules: [
			// ... 其它规则
			{ test: /\.vue$/, loader: 'vue-loader' }
		]
	},
	plugins: [
		// ... 其它插件
		new VueLoaderPlugin() // 请确保引入这个插件!
	]
}

1.4 在 webpack 项目中使用 vue

① 运行 npm i vue –S 安装 vue 。

② 在 src -> index.js 入口文件中,通过 import Vue from 'vue' 来导入 vue 构造函数。

③ 创建 vue 的实例对象,并指定要控制的 el 区域。

④ 通过 render 函数渲染 App 根组件。

// 1. 导入 Vue 构造函数
import Vue from 'vue'

// 2. 导入 App 根组件
import App from './components/App.vue'

const vm = new Vue({
	// 3. 指定 vm 实例要控制的页面区域
	el: '#app',
	// 4. 通过 render 函数,把指定的组件渲染到 el 区域中
	render: h => h(App)
})

1.5 webpack 打包发布

上线之前需要通过 webpack 将应用进行整体打包,可以通过 package.json 文件配置打包命令:

// 在package.json文件中配置 webpack 打包命令
// 该命令默认加载项目根目录中的 webpack.config.js 配置文件
"scripts": {
	// 用于打包的命令
	"build": "webpack -p",
	// 用于开发调试的命令
	"dev": "webpack-dev-server --open --host 127.0.0.1 --port 3000",
},

2、Vue 脚手架

2.1 Vue 脚手架的基本用法

Vue 脚手架用于快速生成 Vue 项目基础架构,其官网地址为:https://cli.vuejs.org/zh/ 。

使用步骤:

(1) 安装 3.x 版本的 Vue 脚手架:

npm install @vue/cli -g

基于 3.x 版本的脚手架创建 vue 项目

(1)基于 交互式命令行 的方式,创建新版 vue 项目。

vue create my-project

(2)基于 图形化界面 的方式,创建新版 vue 项目(推荐)。

vue ui

(3)基于 2.x 的旧模板,创建旧版 vue 项目。

npm install -g @vue/cli-init
vue init webpack my-project

2.2 Vue 脚手架生成的项目结构分析

element 对话框封组件 怎么打开_单文件组件

2.3 Vue 脚手架的自定义配置

(1)通过 package.json 配置项目

// 必须是符合规范的json语法
"vue": {
	"devServer": {
		"port": "8888",
		"open" : true
	}
},

注意: 不推荐使用这种配置方式。因为 package.json 主要用来管理包的配置信息;为了方便维护,推荐将 vue 脚
手架相关的配置,单独定义到 vue.config.js 配置文件中。

(2)通过单独的配置文件配置项目

① 在项目的跟目录创建文件 vue.config.js

② 在该文件中进行相关配置,从而覆盖默认配置。

// vue.config.js
module.exports = {
	devServer: {
		port: 8888
	}
}

3、Element-UI 的基本使用

Element-UI:一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库

官网地址为:https://element-plus.gitee.io/zh-CN/

3.1 基于命令行方式手动安装

① 安装依赖包 npm i element-ui –S

② 导入 Element-UI 相关资源。

// 导入组件库
import ElementUI from 'element-ui';
// 导入组件相关样式
import 'element-ui/lib/theme-chalk/index.css';

// 配置 Vue 插件(注册组件)
Vue.use(ElementUI);

3.2 基于图形化界面自动安装

① 运行 vue ui 命令,打开图形化界面 。

② 通过 Vue 项目管理器,进入具体的项目配置面板。

③ 点击 插件 -> 添加插件,进入插件查询面板。

④ 搜索 vue-cli-plugin-element 并安装。

⑤ 配置插件,实现按需导入,从而减少打包后项目的体积。