前端学习--Vue.js Day2

1、反馈:
在这里插入图片描述
2、品牌案例
完成品牌列表的添加功能
(1)Vue.js中不建议用jQuery
前端学习--Vue.js Day2_第1张图片
根据关键字实现数组的过滤
在这里插入图片描述




3、Vue中全局过滤器的基本使用
Vue中全局过滤器(即所有的实例对象都能使用),类似全局组件

过滤器:就是对文本修改,形成自己的定义输出;过滤器是文本输出前最后一层处理
注意:过滤器不会修改原数据,只是输出的结果被修饰了
“|”:这条竖就是管道符
在这里插入图片描述
即将name作为第一个参数传给function,在函数内对数据进行操作
前端学习--Vue.js Day2_第2张图片


 

4、过滤器–定义私有过滤器(局部)
前端学习--Vue.js Day2_第3张图片
在这里插入图片描述
5、字符串的padStart方法使用(ES6)
当时间为1,需要展示成01时,可以用这个方法去填充。记住:数字先转为字符串形式
前端学习--Vue.js Day2_第4张图片
6、自定义按键修饰符
//自定义全局按键修饰符

Vue.config.keyCodes.f2 = 113;

7、指令-自定义全局指令让文本框获取焦点(要在元素插入DOM中才能获取焦点)

//定义全局指令,其中参数1:指令名称(定义时不需要加v-前缀,调用时需要)
//参数2:对象(有指令相关的函数,这些函数可以在特定的时间进行操作)
Vue.directive('focus', {
  //在元素刚绑定指令的时候,还没有插入DOM中,这时调用focus方法无作用
  //因为一个元素只有插入DOM之后才能获取焦点
  bind:function (el) {
  //  每当指令绑定到元素上的时候,会立即指向这个函数,只执行一次
  //  注意:在每一个函数中,第一个参数永远是el,表示被绑定的元素,
  //  这个元素是原生的js对象
    el.focus()  //js行为
  },
  //插入函数;inserted表示元素插入到DOM中的时候,会执行
  inserted:function (el) {
    //这时才能获取焦点
    //和JS行为有关的操作,最好子inserted中去执行,防止JS行为不生效
    el.focus()
  },
  //更改函数;当VNode更新时,会执行这个函数,可能触发多次
  update:function () {
  }
})

8、指令-使用钩子函数的第二个binding参数拿到传递的值

//自定义设置字体颜色
Vue.directive('color', {
  //当元素加载到内存中就会执行bind函数
  bind:function (el, binding) {
    //为什么可以写在bind中?
    //当DOM元素当有样式时,浏览器在解释DOM元素时会自动带上其样式
    //样式:只要通过指令绑定给了元素,不管这个元素有没有被插入到页面中去,这个元素肯定有了一个内联的样式
    //将来元素肯定会显示到页面中,这时候浏览器的渲染引擎必然会解析样式,应用给这个元素
    el.style.color = binding.value
  //  和样式相关的操作,一般都可以在bind中执行
  }
})


9、指令-定义私有指令
前端学习--Vue.js Day2_第5张图片
指令函数的简写形式
在这里插入图片描述
10、生命周期函数-组件创建期间的4个钩子函数
前端学习--Vue.js Day2_第6张图片
生命周期就是一堆事件,要在页面中显示真正的内容需要Mount(挂载)
beforeMount:内存数据最新,页面的数据不是最新的
Mounted:页面中的(DOM)元素数据是最新的
前端学习--Vue.js Day2_第7张图片
前端学习--Vue.js Day2_第8张图片
前端学习--Vue.js Day2_第9张图片

beforeCreate () {
  //这是我们遇到的第一个生命周期函数,表示实例完全被创建出来之前,会执行它
  // console.log(this.msg) //报错
  // this.show() //报错
//  注意:在beforeCreate生命周期函数执行的时候,data和methods中的数据和函数都
//  还没有初始化
},
created () {
//  这是遇到的第二个生命周期函数
//   console.log(this.msg)
//   this.show()
//  在created中,data和methods都已经被初始化好了
//  如果要调用methods中的函数和data中的数据,最早,只能在created中操作
},
beforeMount () {
//  这是遇到的第三个生命周期函数
//  表示模板已经在内存中编译完成了,但尚未把模板渲染到页面中
//在beforeMount 执行的时候,页面中的元素,还没有被真正替换过来,只是之前写的一些模板字符串
},
mounted () {
  //  这是遇到的第四个生命周期函数
//  表示,内存中的模板,已经真实的挂载到了页面中
  //  用户已经可以看到渲染好的页面了
//  注意:mounted是实例创建期间的最后一个生命周期函数,当执行完mounted就表示,实例已经
//  被完全创建好了,此时,如果没有其他操作的话,这个实例就静静的躺在我们的内存中一动不动
}

11、生命周期函数-组件运行和销毁阶段的钩子函数
前端学习--Vue.js Day2_第10张图片
前端学习--Vue.js Day2_第11张图片
前端学习--Vue.js Day2_第12张图片
前端学习--Vue.js Day2_第13张图片
前端学习--Vue.js Day2_第14张图片
12、vue-resource发起get、post、jsonp请求
前端学习--Vue.js Day2_第15张图片
(1)导包(注意顺序)

前端学习--Vue.js Day2_第16张图片


前端学习--Vue.js Day2_第17张图片
Get请求:
前端学习--Vue.js Day2_第18张图片
Post请求:
前端学习--Vue.js Day2_第19张图片
jsonp请求:
前端学习--Vue.js Day2_第20张图片
13、结合Node手写JSONP服务器剖析JSONP原理
script标签不受跨域限制;JSONP:解决数据跨域传递
前端学习--Vue.js Day2_第21张图片

你可能感兴趣的:(前端学习)