vue.js 教程?Vue.js 极简教程
这篇文章给大家聊聊关于vue.js 教程,以及Vue.js 极简教程对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
Vue.js 极简教程
https://unpkg.com/vue@2.5.3/dist/vue.js
来,直接开始:
创建一个.html文件,然后通过如下方式引入 Vue:
https://jsfiddle.net/chrisvfritz/50wL7mdz/
Vue.js文档: https://cn.vuejs.org/v2/guide/
https://www.w3cplus.com/blog/vue
Vue以数据驱动和组件化的思想构建的。相比于Angular.js,Vue.js提供了更加简洁、更易于理解的API,使得我们能够快速地上手并使用Vue.js。
如果你之前已经习惯了用jQuery操作DOM,学习Vue.js时请先抛开手动操作DOM的思维,因为Vue.js是数据驱动的,你无需手动操作DOM。它通过一些特殊的HTML语法,将DOM和数据绑定起来。一旦你创建了绑定,DOM将和数据保持同步,每当变更了数据,DOM也会相应地更新。
当然了,在使用Vue.js时,你也可以结合其他库一起使用,比如jQuery。
使用Vue.js2.0如何实现背景视频登录页面
本文讲述如何实现拥有酷炫背景视频的登录页面,浏览器窗口随意拉伸,背景视频及前景登录组件均能完美适配,背景视频可始终铺满窗口,前景组件始终居中,视频的内容始终得到最大限度的保留,可以得到最好的视觉效果
本文讲述如何实现拥有酷炫背景视频的登录页面,浏览器窗口随意拉伸,背景视频及前景登录组件均能完美适配,背景视频可始终铺满窗口,前景组件始终居中,视频的内容始终得到最大限度的保留,可以得到最好的视觉效果。并且基于 Vue.js 2.0全家桶。具体效果如下图所示:
最终效果可以翻到文章最后观看。
1.背景视频 Web页面的既有实现方式
国外有一个很好的网站「Coverr」,提供了完善的教程和视频资源,帮助前端开发者构建酷炫的背景视频主页,网站效果示例如下图所示:
教程如下所示:
从图中以及我的实践可以得出以下观点:
该教程使用了 jQuery。由于我们想要使用 Vue.js,则 jQuery可被完全替代掉。
该教程的 CSS、JavaScript代码均过于冗余。
直接运行示例,发现效果并不好,浏览器窗口随意拉伸时,背景视频并不能完美适配「会出现黑边等瑕疵」,效果未达到预期。
2.设计完美的背景视频 Web页面
首先基于脚手架工具 vue-cli来创建一个使用 vue-loader的项目,构建完毕后,在相应目录下创建「.vue」文件,作为登录页面的模板文件,具体细节不再赘述。本节内容仅局限于该.vue文件。
2.1 HTML模板
基于需求,对 Coverr提供的 HTML模板进行了细微修改,结果如下:
<template>
<p class="homepage-hero-module">
<p class="video-container">
<p:style="fixStyle" class="filter"></p>
<video:style="fixStyle" autoplay loop class="fillWidth" v-on:canplay="canplay">
<source src="PATH_TO_MP4" type="video/mp4"/>
浏览器不支持 video标签,建议升级浏览器。
<source src="PATH_TO_WEBM" type="video/webm"/>
浏览器不支持 video标签,建议升级浏览器。
</video>
<p class="poster hidden" v-if="!vedioCanPlay">
<img:style="fixStyle" src="PATH_TO_JPEG" alt="">
</p>
</p>
</p>
</template>模板中, filter类的 p标签是一层背景视频的蒙版,可以通过蒙版控制视频的亮暗以及色温等。
video标签为标准的 HTML5标签,提供两种格式的视频以及一张图片占位符,背景视频在加载完毕后即自动播放。
Coverr提供的原始模板,直接调试,页面只显示图片,而无法播放视频,通过使用 Vue.js的 v-if指令解决了该问题。
2.2 CSS
对原始模板 CSS代码进行了大幅精简,修改后的 CSS代码如下所示:
<style scoped>
.homepage-hero-module,
.video-container{
position: relative;
height: 100vh;
overflow: hidden;
}
.video-container.poster img,
.video-container video{
z-index: 0;
position: absolute;
}
.video-container.filter{
z-index: 1;
position: absolute;
background: rgba(0, 0, 0, 0.4);
}
</style>由于大多数样式均被项目全局修改了,所以在此专用于此模板的样式只剩下三条,简要说明如下:
容器 p铺满浏览器窗口
蒙版 p位于视频的上方,以起到蒙版的作用。
2.3 JavaScript代码
<script>
export default{
name:'login',
data(){
return{
vedioCanPlay: false,
fixStyle:''
}
},
methods:{
canplay(){
this.vedioCanPlay= true
}
},
mounted: function(){
window.onresize=()=>{
const windowWidth= document.body.clientWidth
const windowHeight= document.body.clientHeight
const windowAspectRatio= windowHeight/ windowWidth
let videoWidth
let videoHeight
if(windowAspectRatio< 0.5625){
videoWidth= windowWidth
videoHeight= videoWidth* 0.5625
this.fixStyle={
height: windowWidth* 0.5625+'px',
width: windowWidth+'px',
'margin-bottom':(windowHeight- videoHeight)/ 2+'px',
'margin-left':'initial'
}
} else{
videoHeight= windowHeight
videoWidth= videoHeight/ 0.5625
this.fixStyle={
height: windowHeight+'px',
width: windowHeight/ 0.5625+'px',
'margin-left':(windowWidth- videoWidth)/ 2+'px',
'margin-bottom':'initial'
}
}
}
window.onresize()
}
}
</script>以上代码中最重要的部分是对 window对象的 onresize事件的监听。当窗口大小更改时,程序同步修改 video及蒙版 dom的尺寸,使得视频的最窄的边始终撑满浏览器的窗口,而长的边左右两边被均匀地裁减。
这样操作,可以使得视频不会被拉伸,视频中心始终位于浏览器的中心,并且在随意拉伸浏览器窗口时,视频的内容始终得到最大限度的保留,并且可以得到最好的视觉效果。
最终效果如下所示:
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
在JS/jQuery中如何实现DIV延时几秒后消失或显示
在jQuery中如何实现定时隐藏对话框
使用原生js实现省市区三级联动
vue是什么软件
vue官网说:Vue.js(读音/vjuː/,类似于 view)是一套构建用户界面的渐进式的JavaScript框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。
1、易用
已经会了 HTML、CSS、JavaScript,即可阅读指南开始构建应用!
2、灵活
不断繁荣的生态系统,可以在一个库和一套完整框架之间自如伸缩。
3、高效
虚拟的DOM的核心思想是:对复杂的文档DOM结构,提供一种方便的工具,进行最小化地DOM操作。
(1)提供一种方便的工具,使得开发效率得到保证
(2)保证最小化的DOM操作,使得执行效率得到保证
扩展资料
1、Vue的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。
2、Vue的目标是通过尽可能简单的 API实现响应的数据绑定和组合的视图组件。
3、Vue可以做从简单到复杂的前端单页应用,随处可见的Web前端都可以用Vue来开发。而且Vue上手速度快、功能强大,且提供了非常好用的脚手架vue-cli,很简单就可以构建并让自己的项目跑起来。
参考资料
百度百科-Vue.js
vue.js 教程和Vue.js 极简教程的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!