vue是什么??
vue特点
1.组件化
2、声明书编码
3、虚拟dom
在 Node.js 环境中运行 ES6
Node.js 是运行在服务端的 JavaScript,用这个环境搭建项目,用于前端
webpack 是一个现代 JavaScript 应用程序的静态模块打包器 (module bundler) 。
vue对象创建
axios配置对象
axios官方文档配置说明
本文主要针对GitHub上的axios的配置文档做一个详解的介绍和说明,并对常用的参数做一个提取说明。
1
axios-GitHub链接地址–内含使用方法以及配置详解介绍
高频常用参数罗列:
1:url // 通过设置url参数,决定请求到底发送给谁
2:method // 设置请求的类型,get/post/delete..
3:baseURL // 设置url的基础结构,发送请求配置时只需要设置url即可,axios会自动将两者进行拼接
4:headers // 头信息:比较实用的参数,在某些项目当中,进行身份校验的时候,要求在头信息中加入一个特殊的 标识 // 来检验请求是否满足要求,可以借助headers对请求头信息做一个配置
5:params // 也是一个比较常用的参数,来设定url参数的,可以通过params直接添加url参数名和参数值
6:data
7:timeout // 超时请求时间,单位是ms 超过请求时间,请求就会被取消
8:其余的都是不经常使用的参数,了解即可!
MVVM 前端的东西
M数据模型 V视图、html模板 VM框架
MVVM模型
●M:模型 Model,data中的数据
●V:视图 View,模板代码
●VM:视图模型 ViewModel,Vue实例
观察发现
●data中所有的属性,最后都出现在了vm身上
●vm身上所有的属性 及Vue原型身上所有的属性,在 Vue模板中都可以直接使用
-——————
MVC 纯后端
M是db数据库
前端永远是那些语法,但版本会有问题,随时间更新迭代,要看官方文档
vuejs.org
MVVM 前端的东西
M数据模型 V视图、html模板 VM框架
-——————
MVC 纯后端
M是db数据库
前端永远是那些语法,但版本会有问题,随时间更新迭代,要看官方文档。所以初学者应该从vue2.0开始学起
vuejs.org
web 1.0时代 - 静态内容呈现。 •
web 2.0时代 - 交互时代。 (纵向深,更安全,交互圈)
web 3.0时代--前端需要具备呈现更加复杂的数据的能力,并提供不亚于复杂的系统应用的交互能力和业务逻辑处理能力。
挂载点
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>初始vue</title>
<!-- 引入vue -->
<script type="text/javascript" src="../js/vue.js">
</script>
</head>
<body>
<div id="root">
<h1>hello,{{name}}</h1>
<!-- 插值 -->
</div>
<script type="text/javascript">
Vue.config.productionTip=false; //设置为 false 以阻止 vue 在启动时生成生产提示。
// 创建vue实例
const x= new Vue({
el:"#root" ,//el用于指定当前vue实例为哪个容器服务,值通常为css选择器字符串
data:{ //data中用于存储数据,数据供el所指定的容器去使用,值 暂时先写成一个对象
name:"qq"
}
})
</script>
</body>
</html>
/* 要点
//1 我们写的vue语法,其实都是new Vue()的参数
2 el挂载点,就等于挂载点 = querySelector("")
3 vue是用作用域的,挂载点里面才是,外面就是普通的html,和vue没关系 */
03-简单的事件绑定
=
要点
1. vue中,尽量不要用箭头函数
2. vue中要匿名函数的简单写法
3. 在vue中,绑定方法名时,永远不要写空的小括号(这意味着走到这一步时程序会直接执行)
4. [v-on:]=[ @ ] 也就是 v-on:等于 @ 【语法糖,就是函数简单写法】
04一个容器智只被一个vue实例去接管
容器:实例=1:1关系
组件思想
注意区分:js 表达式 和 js代码(语句)
js表达式是一种特殊的js语句
a表达式:一个表达式会产生一个值,可以放在任何一个需要值的地方
- a+b
- demo(1)
- x === y ? 'a' : 'b'
js代码(语句)
if(){}
for(){}
总结
插值和指令语法
<!-- Vue模板语法包括两大类
1
插值语法
功能:用于解析标签体内容
写法:{{xxx}},xxx 是 js 表达式,可以直接读取到 data 中的所有区域
2
指令语法
功能:用于解析标签(包括:标签属性、标签体内容、绑定事件…)
举例:<a v-bind:href="xxx">或简写为<a :href="xxx">,xxx 同样要写 js 表达式,可以直接读取到 data 中的所有属性
备注:Vue中有很多的指令,且形式都是 v-xxx,此处只是拿v-bind举例 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<!-- 引入vue -->
<script type="text/javascript" src="../js/vue.js">
</script>
</head>
<body>
<!-- 准备好一个容器 -->
<div id="root">
<h1>插值语法</h1>
<h3>你好,{{name}}</h3>
<hr >
<h1>指令语法</h1>
<a v-bind:href="url">百度一下</a>
<a :href="url">百度一下</a>
</div>
<!-- Vue模板语法包括两大类
1
插值语法
功能:用于解析标签体内容
写法:{{xxx}},xxx 是 js 表达式,可以直接读取到 data 中的所有区域
2
指令语法
功能:用于解析标签(包括:标签属性、标签体内容、绑定事件…)
举例:<a v-bind:href="xxx">或简写为<a :href="xxx">,xxx 同样要写 js 表达式,可以直接读取到 data 中的所有属性
备注:Vue中有很多的指令,且形式都是 v-xxx,此处只是拿v-bind举例 -->
</body>
<script type="text/javascript">
Vue.config.productionTip=false;
new Vue({
el:'#root',
data:{
name:'jack',
url:'www.baidu.com',
}
})
</script>
</html>
单向数据绑定
双向数据绑定 :v-model只能用在表单类(输入类)元素
1.4. 数据绑定
Vue中有2种数据绑定的方式
1、单向绑定v-bind数据只能从 data 流向页面
2、双向绑定v-model数据不仅能从 data 流向页面,还可以从页面流向 data
备注
1、双向绑定一般都应用在表单类元素上,如 <input><select><textarea>等
2、v-model:value可以简写为v-model,因为v-model默认收集的就是value值
1.5. el 与 data 的两种写法
el有2种写法
a创建Vue实例对象的时候配置el属性
b先创建Vue实例,随后再通过vm.$mount('#root')指定el的值
data有2种写法
a对象式:data: { }
b函数式:data() { return { } }
如何选择:目前哪种写法都可以,以后到组件时,data必须使用函数,否则会报错
一个重要的原则
由Vue管理的函数,一定不要写箭头函数,否则 this 就不再是Vue实例了