1.实现功能-video3
2.钩子函数-自定义指令:
对于前端来说,钩子函数就是指再所有函数执行前,我先执行了的函数,即 钩住 我感兴趣的函数,只要它执行,我就先执行。就是说抢先执行。
① v-focus:自定义 刚进入页面就自动对焦到方框【定义的是行为】
v-color:自定义 方框为红色样式【定义的是样式,可直接在bind中定义】
3.
v-color=“blue” ,此时的blue当成vue中的data变量
v-color=“‘blue’”,当成是字符串
4.vue的生命周期
5.jsonp
服务器端的node.js代码
利用19行,请求一个js脚本,相当于20-22行,然后解析show()的语句
存在一个问题:两边必须show()-show()名称一一对应,解决方法:把前端的函数名传过去
服务端:
顺带传其他数据;
服务器:
前端:
output:
6.懒加载
【 jQuery.lazyload 】
一、什么是图片滚动加载?
通俗的讲就是:当访问一个页面的时候,先把img元素或是其他元素的背景图片路径替换成一张大小为1*1px图片的路径(这样就只需请求一次),只有当图片出现在浏览器的可视区域内时,才设置图片正真的路径,让图片显示出来。这就是图片懒加载。
二、为什要使用这个技术?
比如一个页面中有很多图片,如淘宝、京东首页等等,如果一上来就发送这么多请求,页面加载就会很漫长,如果js文件都放在了文档的底部,恰巧页面的头部又依赖这个js文件,那就不好办了。更为要命的是:一上来就发送百八十个请求,服务器可能就吃不消了(又不是只有一两个人在访问这个页面)。
因此优点就很明显了:不仅可以减轻服务器的压力,而且可以让加载好的页面更快地呈现在用户面前(用户体验好)。路由懒加载能够提高页面的加载速度,不过使用也得看场合。有时候需要懒加载,提升首页加载速度,一般是页面层级较为复杂的时候。大家看一下不加代码分割浏览器加载的文件。
【路由懒加载】
~ vue项目实现按需加载的3种方式:https://segmentfault.com/a/1190000011519350
路由懒加载能够提高页面的加载速度,不过使用也得看场合。有时候需要懒加载,提升首页加载速度,一般是页面层级较为复杂的时候。大家看一下不加代码分割浏览器加载的文件。
这里蓝色部分是webpack自动分割出来的,当修改业务js时候manifest和vendor是不会改变的,浏览器直接在缓存中提取。
会变的是app.js。如果不采用路由分割会是什么效果呢。所有的代码都打包到app.js中,如果项目巨大,那么首页加载会是灾难。
7.获取DOM元素
方法一:jQuery
$(".form").html(str);
在页面加载jQuery核心文件之后,可以使用jQuery语法来编写Javascript
jQuery的语法相对容易,而且插件丰富,功能强大
$(" “) 用来选择表签,可以是
$(“span”) 直接选择
$(”#abc") 选择 ID 为 abc 的标签
$(".abc") 选择class 为 abc 的标签
html( ) 是函数 意思是把() 里的内容放到指定标签里
<script>
function ff()
{
var str = "456456";
$(".form").html(str);
}
</script>
方法二:vue $refs
<div id="app">
<input type="text" ref="input1"/>
<button @click="add">添加</button>
</div>
<script>
new Vue({
el: "#app",
methods:{
add:function(){
this.$refs.input1.value ="22"; //this.$refs.input1 减少获取dom节点的消耗
}
}
})
</script>
一般来讲,获取DOM元素,需document.querySelector(".input1")获取这个dom节点,然后在获取input1的值。但是用ref绑定之后,我们就不需要在获取dom节点了,直接在上面的input上绑定input1,然后 refs.input1 这样就可以减少获取dom节点的消耗了
8.vue-resource
导入了vue-resource 地址就会自动在后面加上“#/”