vue-cli 3.0
 
npm install -g @vue/cli
# OR
yarn global add @vue/cli
ui 界面创建项目
vue ui
命令行创建项目 步骤
vue create 项目名
src目录
assets文件夹 放静态资源
component文件夹 放公共组件(基础组件)
view文件夹 页面级组件
app.vue 主文件
main.js 主入口 webpack配置的文件
router.js 路由配置文件
vue项目
运行项目
npm run serve
打包项目
npm run build
运行完之后会多出个dist文件夹 这个是最好上线用的 要在服务端运行
(额外)
npm install http-server -g
在文件夹下面运行 http-server 自动把目录下的index.html当做首页
ES6的模块语法 导出和引入的东西都是一个对象 module(对象)
import 表示引入 必须是通过export导出的
export 表示导出
export default 默认导出
@符号是/src的别名
exact="true" 严格匹配
## vue项目
目录
views文件夹 页面级组件
app.vue 根组件
mains 主入口 webpack配置的
router.js 路由配置文件
assets文件夹 放静态资源
components文件夹 放公共组件(基础组件)
1. 运行项目
npm run serve
2. 打包项目
npm run build
运行完成后会多一个dist文件夹 这个是最后上线用的 要在服务端运行
3. (额外)npm install
http-server -g global 全局 在文件夹下面运行http-server 自动把目录下的index.html 当做首页
4. es6的模块语法 导出和引入的东西都是一个对象 moudle(对象)
import 表示引入 必须是通过export导出的
export 表示导出
export default 默认导出
5. 我们可以把每个.vue文件看成一个组件 // @ is an alias to /src @符号是/src的别名
6.组件的使用三部曲
1) 通过import 引入组件
2) 在components里面注册
3) 用标签的形式使用
7. props传值默认值如果是数组或者对象的时候必须用函数
8. 配置路由跳转
1) router-link 写跳转路径
2) 建立路由对应的.vue文件
3) 配置rouer.js
9. 路由懒加载
通过箭头函数和import方式直接使用
10. spa应用 单页面应用
11. 使用字体图标 https://www.iconfont.cn/
首页 列表页 购物车 返回 个人中心
1) css引入 放在asset 文件夹里面 引入的时候用 ./
2) import 作为模块导入
12. 路由激活的样式 router-link-exact-active router-link-active
exact 严格匹配
13. 导航组件
导航越来越多的时候 需要怎么处理 抽离成公共组件
style lang="less" 表示使用什么方式的css预处理语言 scoped 表示只对当前组件生效
14. 组件化的好处 可复用 可组合 可维护
15. 轮播图组件 在src同级目录下建立一个mock文件夹或者其他任何位置都可以 mock文件夹用来放我们的mock数据mock 里面的代码和前端代码是没有任何关系的
16. ajax请求配置
1)在src 文件夹下面建api/ajax文件夹 这里面放所有的请求 方便管理
在api 文件夹下面建立一个index.js
只要有index.js index.js会被作为默认的入口 写的时候可以省略
import {} from '../api' = '../api/index.js'
2)npm install axios
3) export let getBanner 等于导出一个key,value相对应的对象
17. mockjs app.js 添加跨域配置(cors 跨域资源共享)
```
//允许哪个域名跨域
      res.setHeader('Access-Control-Allow-Origin',"*");
//允许哪个方法跨域
res.setHeader('Access-Control-Allow-Methods','PUT,POST,GET,DELETE')
//预检测存活时间,单位是s
res.setHeader('Access-Control-Max-Age',6)
if(req.method==='OPITIONS'){
res.end()//OPITIONS请求不做任何处理
}
```
18. 轮播图 地址:https://github.com/surmon-china/vue-awesome-swiper
下载 npm install vue-awesome-swiper --save
19. 列表页分页
传参:页数(默认第一页)
/list?page=1 1页显示5条数据
加载更多 滚动加载更多 判断什么时候滚动到底部
scrollTop+clientHeight>scrollHeight
20. refs 可以获取元素或者组件
21. 路由跳转 跳转到详情页
使用标签的形式
router-link
tag='li' 把a标签转成需要的标签名 a->li
:to 跳转到哪里 完全等价this.$router.push({name:'detail',query:{id:item.id}})
参数 params query
1)params 不能用path 用name
2) 需要去路由定义参数在路径后面用 /:变量名 /:id 必须有,但是不固定 和params对象传过来的变量名一致 可以是多个 /:id/:name
3) this.$route.params.变量名
4)query 直接使用 this.$route.query query会追显示在地址栏 http://localhost:8080/#/detail?id=1
22.详情页数据
请求详情页 需要传id 根据id来返回对应的数据
##报错
1. can not find moudle
路径引错 或者文件不存在
 

vue-cli3.0 笔记的更多相关文章

  1. vue cli3.0 结合echarts3.0和地图的使用方法

    echarts 提供了直观,交互丰富,可高度个性化定制的数据可视化图表.而vue更合适操纵数据. 最近一直忙着搬家,就没有更新博客,今天抽出空来写一篇关于vue和echarts的博客.下面是结合地图的 ...

  2. 解决vue/cli3.0 语法验证规则 ESLint: Expected indentation of 2 spaces but found 4. (indent)

    当你使用vue/cli3.0的时,有可能出现雁阵规则 ESLint: Expected indentation of 2 spaces but found 4. (indent) 解决方法 1.在vu ...

  3. 01-路由跳转 安装less this.$router.replace(path) 解决vue/cli3.0语法报错问题

    2==解决vue2.0里面控制台包的一些语法错误. https://www.jianshu.com/p/5e0a1541418b 在build==>webpack.base.conf.j下注释掉 ...

  4. vue cli3.0打包

    1.vue cli3.0需要在项目根目录下配置webpack  包括反向代理以及打包文件路径 const webpack = require("webpack"); module. ...

  5. 使用VUE CLI3.0搭建项目vue2+scss+element简易版

    1.安装Vue CLI 3 //三选一即可cnpm install -g @vue/cli npm install -g @vue/cli yarn global add @vue/cli 注意: 1 ...

  6. vue cli3.0配制axios代理

    今天学习时,想访问网易新闻接口,结果显而易见,因为跨域被浏览器拒绝了. 去网上找一下结果一开始找到的是2.x版本的配置,生硬的放进去,给我各种报错.编译阶段就炸了.浪费好多时间 再按3.0版本去搜索才 ...

  7. vue cli3.0快速搭建项目详解(强烈推荐)

    这篇文章主要介绍下vue-cli3.0项目搭建,项目结构和配置等整理一下,分享给大家. 一.介绍 Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.有三个组件: CLI:@vue/cl ...

  8. vue cli3.0使用svg全过程

    VUE-cli3使用 svg-sprite-loader svg-sprite-loader 的插件,用来根据导入的 svg 文件自动生成 symbol 标签并插入 html 1.安装依赖 npm i ...

  9. vue cli3.0 首次加载优化

    项目经理要求做首页加载优化,打包后从十几兆优化到两兆多,记下来怕下次忘记 运行report脚本 可看到都加载了那些内容,在从dist文件中index.html 查看首次加载都加载了那些东西,如下图:然 ...

  10. vue cli3.0 build 打包 的 js 文件添加版本号 解决 js 缓存问题

    在 vue.config.js 的文件中加入下面这段话 // vue.config.jsconst Timestamp = new Date().getTime();module.exports = ...

随机推荐

  1. jquery和js 判断下拉框选项选中值

    js <script> var selectId = document.getElementById("VariantType");//获取ID selectId.on ...

  2. springcloud学习第一坑

    我是根据周立先生所写的<Spring+Cloud与Docker微服务架构实战>来学习SpringCloud的,我会记录下来我日常遇到的所有问题,包括但不仅只包括SpringCloud的问题 ...

  3. 手动实现一个list的常用功能

    package com.pcxm.list; /** * 手动实现一个list * MyList * @description TODO * @author zhoum * @date 2018年5月 ...

  4. gitlab自动备份和定时删除

    GitLab数据手动备份1.GitLab默认备份目录为/var/opt/gitlab/backups,可以修改/etc/gitlab/gitlab.rb里面的默认存放备份文件目录,这里使用默认备份目录 ...

  5. java项目对jar包加密流程,防止反编译

    Java 开发语言以其安全性高.代码优化.跨平台等特性,迅速取代了很多传统高级语言,占据了企业级网络应用开发等诸多领域的霸主地位.特别是近年来大数据.互联网+.云计算技术的不断发展,Java 开发语言 ...

  6. vue中 this.$set的用法

    当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的. <template> <div id=& ...

  7. Javascript基础语法(一)

    一.Javascript简介 1. 定义 基于事件和对象驱动,并具有安全性能的脚本语言. 2. 出现背景 上世纪90年代,在美国有出现,当时有上网的环境,并且有网站服务在运行. 注册服务 上图涉及的问 ...

  8. 20175208 《Java程序设计》第八周学习总结

    20175208 2018-2019-3<Java程序设计>第八周学习总结 一.教材学习内容总结: 1.泛型: 泛型的主要目的是可以建立具有类型安全的集合框架(如链表.散列映射等数据结构) ...

  9. 如何在Linux 中获取硬盘分区或文件系统的UUID?

    作为一个 Linux 系统管理员,你应该知道如何去查看分区的 UUID 或文件系统的 UUID.因为现在大多数的 Linux 系统都使用 UUID 挂载分区.你可以在 /etc/fstab 文件中可以 ...

  10. pthread_cond_wait虚假唤醒

    pthread_cond_wait中的while()不仅仅在等待条件变量前检查条件cond_is_false是否成立,实际上在等待条件变量后也检查条件cond_is_false是否成立.在多线程等待的 ...