(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" ...
随机推荐
- Spring Boot,Spring Security实现OAuth2 + JWT认证
阅读此文,希望是对JWT以及OAuth2有一定了解的童鞋. JWT认证,提供了对称加密以及非对称的实现. 内容源码点我 涉及到源码中两个服务 spring-boot-oauth-jwt-server ...
- 并发编程之Disruptor并发框架
一.什么是Disruptor Martin Fowler在自己网站上写了一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金融交易平台,它能够以很低的延迟产生大量交易.这个系统是建立在JV ...
- 0.UML图入门——学习《大话设计模式》笔记
<大话设计模式>中讲述了UML类图的基本用法,做此笔记加深理解. 注:上图来源于<大话设计模式> 上图中设计的关键术语为:继承.实现.聚合.组合.关联.依赖. 要想弄清楚UML ...
- sql 注入风险
目录 sql 注入风险 什么是sql注入呢? 查看sql注入风险 如何避免 sql 注入风险 pymysql 简单规避注入风险示列 sql 注入风险 什么是sql注入呢? 参考百度 查看sql注入风险 ...
- Qt Table Widget常用操作
一.鼠标悬浮在item上 显示提示信息 1.在构造函数开启table Widget控件的鼠标捕获功能 // 开启鼠标捕获功能(实现table widget的悬浮功能) ui.tableWidget-& ...
- sql基本常识[未完待续]
---------------------------------------------------------------------------------------------------- ...
- C#验证邮箱,电话,手机,数字,英文,日期,身份证,邮编,网址,IP类等常用函数封装
#region 验证邮箱验证邮箱 /**//// <summary> /// 验证邮箱 /// </summary> /// <param name="sour ...
- 二十三、mysql索引管理详解
一.索引分类 分为聚集索引和非聚集索引. 聚集索引 每个表有且一定会有一个聚集索引,整个表的数据存储在聚集索引中,mysql索引是采用B+树结构保存在文件中,叶子节点存储主键的值以及对应记录的数据,非 ...
- Find 命令记录
当需要查找一个时间的文件时 使用find [文件目录] -mtime [时间] 例如:查看mysql.bak目录下的1天前的文件 find mysql.bak -mtime 找到此文件之后需要将它移动 ...
- Flask-SQLAlchemy操作指南
Flask-SQLAlchemy官方文档 from flask_sqlalchemy import SQLAlchemy app = Flask(__name__)app.config['SQLALC ...