[TOC]
## :-: [vue - 安装脚手架 (vue-cli3.0)](https://cn.vuejs.org/v2/guide/installation.html#命令行工具-CLI)
```
npm install -g @vue/cli 安装脚手架,用于生成项目、
npm install -g @vue/cli-service-global 快速原型开发,编译.vue文件、
如果之前已经安装过旧版本(非3.x)脚手架,需要先卸载旧版本、
npm uninstall vue-cli-g
如果仍然需要使用旧版本的 vue init 功能,可以全局安装一个桥接工具、
nom install -g @vue/cli-init 拉取旧版本
插件名:Vetur
```
$`vue serve App.vue` -- 将vue文件编译打包
## :-: .vue 文件基本结构
```
<template>
<!-- 视图 (html) -->
<div>{{ msg }}</div>
</template>
<script>
// 逻辑 (js)
export default {
data() {
return {
msg: "Hello World ~"
};
}
};
</script>
<style>
/* 样式 (css) */
div { background-color: aqua; }
</style>
```
## :-: 引入自定义组件
:-: App.vue (主文件)
```
<template> <!-- 视图 -->
<div>
<h1>{{ msg }}</h1>
<test />
</div>
</template>
<script> // 逻辑
// 引入自定义组件、
import Test from "./Test";
export default {
data() { return { msg: "Hello World ~" }; },
components: { Test }
};
</script>
<style> /* 样式 */
div { width: 500px; text-align: center; border: 1px solid #333; }
</style>
```
:-: Test.vue (被引入组件)
```
<template> <!-- 视图 -->
<h2>{{ test }}</h2>
</template>
<script> // 逻辑
export default {
data() { return { test: "----- vue -----" }; }
};
</script>
<style> /* 样式 */
h2 { color: red; }
</style>
```
![](https://box.kancloud.cn/484ca0a6f36042545f4bba4e8a431e44_517x157.png)
*****
## :-: [网络请求(Axios)](https://www.kancloud.cn/yunye/axios/234845)
```
axios.get("https://xxx.com/xxx.php", { params: { key: xxx } })
.then((res) => { ··· },(err) => { ··· });
```
## :-: [axios 下载文件(自定义文件名)](https://www.jianshu.com/p/eb785e4318f4)
```
download(){
const url = "文件地址"
axios.get(url,{
responseType:'blob'
}).then( res => {
let blob = new Blob([res.data])
let downloadElement = document.createElement('a')
let href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = `new name`; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放blob对象
})
}
```
- 前端工具库
- HTML
- CSS
- 实用样式
- JavaScript
- 模拟运动
- 深入数组扩展
- JavaScript_补充
- jQuery
- 自定义插件
- 网络 · 后端请求
- css3.0 - 2019-2-28
- 选择器
- 边界样式
- text 字体系列
- 盒子模型
- 动图效果
- 其他
- less - 用法
- scss - 用法 2019-9-26
- HTML5 - 2019-3-21
- canvas - 画布
- SVG - 矢量图
- 多媒体类
- H5 - 其他
- webpack - 自动化构建
- webpack - 起步
- webpack -- 环境配置
- gulp
- ES6 - 2019-4-21
- HTML5补充 - 2019-6-30
- 微信小程序 2019-7-8
- 全局配置
- 页面配置
- 组件生命周期
- 自定义组件 - 2019-7-14
- Git 基本操作 - 2019-7-16
- vue框架 - 2019-7-17
- 基本使用 - 2019-7-18
- 自定义功能 - 2019-7-20
- 自定义组件 - 2019-7-22
- 脚手架的使用 - 2019-7-25
- vue - 终端常用命令
- Vue Router - 路由 (基础)
- Vue Router - 路由 (高级)
- 路由插件配置 - 2019-7-29
- 路由 - 一个实例
- VUEX_数据仓库 - 2019-8-2
- Vue CLI 项目配置 - 2019-8-5
- 单元测试 - 2019-8-6
- 挂载全局组件 - 2019-11-14
- React框架
- React基本使用
- React - 组件化 2019-8-25
- React - 组件间交互 2019-8-26
- React - setState 2019-11-19
- React - slot 2019-11-19
- React - 生命周期 2019-8-26
- props属性校验 2019-11-26
- React - 路由 2019-8-28
- React - ref 2019-11-26
- React - Context 2019-11-27
- PureComponent - 性能优化 2019-11-27
- Render Props VS HOC 2019-11-27
- Portals - 插槽 2019-11-28
- React - Event 2019-11-29
- React - 渲染原理 2019-11-29
- Node.js
- 模块收纳
- dome
- nodejs - tsconfig.json
- TypeScript - 2020-3-5
- TypeScript - 基础 2020-3-6
- TypeScript - 进阶 2020-3-9
- Ordinary小助手
- uni-app
- 高德地图api
- mysql
- EVENTS
- 笔记
- 关于小程序工具方法封装
- Tool/basics
- Tool/web
- parsedUrl
- request