(19)打鸡儿教你Vue.js
了解vue2.x的核心技术
建立前端组件化的思想
常用的vue语法
vue-router,vuex,vue-cli
使用vue-cli工具
Vue框架常用知识点
vue核心技术
集成Vue
重点看,重点记
模板语法,条件渲染,列表渲染
vuex,vue-router
v-bind属性绑定,事件绑定
Class与Style绑定
workflow工作流
单页面
Cli工具登录环境
- vue常用模板语法
- 列表渲染、条件渲染
- Class与style绑定
- vue事件绑定与处理
- vue计算属性computed, watch
- vue-cli快速创建工程
- vue的组件思想,代码规范
- vue-router介绍
- 认识vuex,组件间的通信方式
- 前端调试方法,vue组件调试方法
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
or Wget:
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
export NVM_DIR="${XDG_CONFIG_HOME/:-$HOME/.}nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
开发环境:
ide,node.js,调式环境,工程环境
node --version
npm i -g vue-cli
vue --version
环境:
ide: webstrom,vscode
npm: vue-cli,webpack,cnpm,nvm
Chrome: Vue调式插件
Vue:
声明式渲染
条件渲染
列表
事件
热部署:gulp,webpack
认识样式:sass,postcss
模板语法
计算属性
Class,Style绑定
条件渲染
列表渲染
事件处理
表单输入绑定
组件基础,生命周期,模块化的思想
组件:
组件通信方式:props,$parent,emit event,Vuex
动画,vue-router, Vue-resource
常用api:
vue-use
props
dom
部署,服务器端渲染,打包编译
vue,基础概念,组件,api,部署
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
hello world!!
</body>
</html>
BootCDN
稳定、快速、免费的前端开源项目 CDN 加速服务
Vue 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.bg {
color: red;
}
</style>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
</head>
<body>
<div class="bg">
hello world!!
{{msg}}
</div>
<script>
new Vue({
el: '.bg',
data: {
msg: 'hello vue!'
}
})
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.bg {
color: red;
}
</style>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
</head>
<body>
<div class="bg" id="app">
hello world!!
{{msg}}
</div>
<script>
new Vue({
el: '#app',
data: {
msg: 'hello vue!'
}
})
</script>
</body>
</html>
vue.js cdn使用
模板语法
vue的文件结构:
template
script
style
模板语法包含插值,指令
// 错
{{template}}
<script>
new Vue({
el: '#app',
data: {
msg: 'hello vue!!',
count: 0,
template: '<div>hello template</div>'
}
})
</script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.bg {
color: red;
}
</style>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
</head>
<body>
<div class="bg" id="app">
hello world!!
{{msg}}
<div v-html="template"></div>
</div>
<script>
new Vue({
el: '#app',
data: {
msg: 'hello vue!',
template: '<div>hello dashucoding</div>'
}
})
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.bg {
color: red;
}
</style>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
</head>
<body>
<div class="bg" id="app" v-bind:id="bg1">
hello world!!
{{msg}}
{{count}}
<div v-html="template"></div>
<a v-bind:href="url">百度</a>
<a :href="url">百度</a>
<button type="button" v-on:click="submit()">加</button>
<button type="button" @click="submit()">加</button>
</div>
<script>
new Vue({
el: '#app',
data: {
bg1: 'app-bind',
msg: 'hello vue!',
template: '<div>hello dashucoding</div>',
url: 'http://www.baidu.com',
count: 0
},
methods: {
submit: function() {
this.count++
}
}
})
</script>
</body>
</html>
vue文件结构
插值语法{{msg}}
数据
js表达式
指令
@click
v-if
:href
计算属性与侦听器
计算属性:computed
侦听器:watch
使用场景:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
</head>
<body>
<div id="app">
{{msg}}
<p>{{msg1}}</p>
</div>
<script>
var arr = 'da'
var app = new Vue({
el: '#app',
data: {
msg: 'Hello Vue!',
another: 'another hello'
},
// 监听
watch: {
msg: function (newval, oldval) {
console.log('newval is:'+newval)
console.log('oldval is:'+oldval)
}
},
computed: {
msg1: function () {
return 'computed:' + this.msg + "," + this.another + arr
}
}
})
</script>
</body>
</html>
arr改变时不会变化,只有msg1里面的内容改变才会发生变化
watch异步场景,computed数据联动
条件渲染,列表渲染,Class与Style绑定
条件渲染:
v-fi
v-else
v-else-if
v-show
列表渲染:
v-for
<div id="app">
<div v-if="count>0">
</div>
<div v-else>
</div>
</div>
<div v-for="item in list">{{item}}</div>
<div v-for="item in list">{{item.name}}</div>
<script>
new Vue({
el: '#app',
data: {
list: [{
name:
age
},{
}]
}
})
v-bind:style="{ 'color': 'red' }"
v-bind:style="styleMsg"
:class="{ 'active': ture }"
:style="styleMsg"
data: {
style: {
colord: red
},
styleMsg: {
color: 'red',
textShadow: '0 0 5px green'
}
}
<div v-show=""
:class="[ 'active', 'add', 'more', { 'another' : ture } ]"
:style="styleMsg">
工程化,页面代码规范,调式vue
请点赞!因为你的鼓励是我写作的最大动力!
吹逼交流群:711613774
(19)打鸡儿教你Vue.js的更多相关文章
- (29)打鸡儿教你Vue.js
web阅读器开发 epub格式的解析原理 Vue.js+epub.js实现一个简单的阅读器 实现阅读器的基础功能 字号选择,背景颜色 有上一页,下一页的功能 设置字号,切换主题,进度按钮 电子书目录 ...
- (26)打鸡儿教你Vue.js
weex框架的使用 1.weex开发入门 2.weex开发环境搭建 3.掌握部分weex组件模块 4.了解一些vue基本常见语法 5.制作一个接近原生应用体验的app weex介绍 安装开发环境 We ...
- (22)打鸡儿教你Vue.js
vue.js 单页面,多页面 Vue cli工具 复杂单页面应用Vue cli工具 交互设计,逻辑设计,接口设计 代码实现,线上测试 git clone,git int 创建分支,推送分支,合并分支 ...
- (21)打鸡儿教你Vue.js
组件化思想: 组件化实现功能模块的复用 高执行效率 开发单页面复杂应用 组件状态管理(vuex) 多组件的混合使用 vue-router 代码规范 vue-router <template> ...
- (18)打鸡儿教你Vue.js
介绍一下怎么安装Vue.js vue.js Vue 不支持 IE8 及以下版本,因为 Vue 使用了 IE8 无法模拟的 ECMAScript 5 特性. Vue.js是一个渐进的,可逐步采用的Jav ...
- (17)打鸡儿教你Vue.js
vue-router <a class="list-group-item" v-link="{ path: '/home'}">Home</a ...
- (15)打鸡儿教你Vue.js
组件化vue.js 组件单向绑定 组件双向绑定 组件单次绑定 创建组件构造器 注册组件 使用组件 Vue.extend() Vue.component() 使用组件 <div id=" ...
- (13)打鸡儿教你Vue.js
一小时复习 vue.js是一个JavaScriptmvvm库,是以数据驱动和组件化的思想构建的,相比angular.js,vue.js提供了更加简洁,更加容易理解的api,如果习惯了jquery操作d ...
- (12)打鸡儿教你Vue.js
组件 语法格式如下: Vue.component(tagName, options) <tagName></tagName> <div id="app" ...
随机推荐
- CSS关于选择器和继承的一些小问题:
选择器的分组 对选择器进行分组,这样在同一组的选择器就可以分享相同的声明.使用逗号将需要分组的选择器分开 h1,h2,h3,h4,h5{ color:green; font-family:" ...
- django AJAX 的应用
目录 AJAX 的使用 AJAX简介 AJAX常见应用情景 AJAX的优缺点 jQuery实现的AJAX JS实现AJAX AJAX请求如何设置csrf_token Form表单上传文件 AJAX上传 ...
- SpringBoot中LocalDatetime作为参数和返回值的序列化问题
欢迎访问我的个人网站 https://www.zhoutao123.com 本文原文地址 https://www.zhoutao123.com/#/blog/article/59 LocalDatet ...
- IntelliJ Idea 依赖包下载成功,代码里无法import问题解决方法
今天clone一个github上的基于maven的项目IntelliJ Idea 依赖包下载成功,代码里无法import.解决方法:删掉原来的.iml,刷新. 如果不行,可尝试:File->In ...
- (多核DSP快速入门)SYS/BIOS入门
(多核DSP快速入门)SYS/BIOS入门 原创文章 转载请注册来源http://blog.csdn.net/tostq 系列教程目录:http://blog.csdn.net/tostq/art ...
- ISCC之msc5他们能在一起吗?
如题,开始分析,附件是一个二维码,读出来一串base64 拿去解密,PASS{0K_I_L0V3_Y0u!} 提交几次不对, 继续hxd分析图片,最后在文件末尾发现一个txt 修改后缀,是加密的, 拿 ...
- Locust 教程
写在 Locust 教程开始的前面 本文参考了: Locust 教程 : https://www.axihe.com/tools/locust/home.html : locust 的官方 Githu ...
- Beta版本冲刺
一.团队成员 团队名称 西柚排课王 项目名称 易奇排排课系统 团队成员 秦傲明 201731062308 韩浩 201731062319 黄青松 201731062322 王越豪 2017310623 ...
- samba简单配置
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB (Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种 ...
- js的异常处理 try catch
<script language="JavaScript"> try { throw new Error(10,"asdasdasd") } cat ...