VUE.js入门学习(1)-起步
1、hello world
<div id="app">{{content}}</div>
var app = new Vue({
el:'#app',
data:{
content:'hello world'
}
})
2、两秒后改变文字为“bye world”
setTimeout(function(){
app.$data.content='bye world'
})
集中在数据的操作上面而不是在dom上。
3、基础语法 v-for、v-model、v-for、v-on
(1)<li v-for="(item,index) in list">{{item}}</li>
(2)v-on:click="" 简写 @:click=""
(3) v-model 数据的双向绑定 data中进行定义
4、组件化
(1)全局组建:
<todo-item></todo-item>
vue.component("TodoItem",{
template:"<li>todo item</li>"
})
(2)v-bind:content="item"
vue.component("TodoItem",{
props:['content']
template:"<li>todo item</li>"
})
父级通过v-bind(简写 :)绑定一个变量content把数据传给子模版。子模版用props进行接收。
(2)局部组建
var TodoItem = {
props:['contnet'],
template:"<li>todo item</li>"
}
var app = new Vue({
el:"#root",
components:[TodoItem], //局部组建需要注册
data:{
}
methods:{
}
})
5、简单的组建间传值 子元素向父元素传值
子元素通过$emit定义一个"delete"向父元素传递,dom绑定一个事件@delete="fmethods"
<todo-item @delete="handleItemDelete" :content="item" :index="index" v-for="(item,index) in list"></todo-item>
var TodoItem = {
props:['contnet','index'],
template:"<li @click='handleItemClick'>todo item</li>",
methods:{
handleItemClick:function(){
this.$emit("delete")
}
}
}
var app = new Vue({
el:"#root",
components:[TodoItem], //局部组建需要注册
data:{
}
methods:{
handleItemDelete:function(){
}
}
})
VUE.js入门学习(1)-起步的更多相关文章
- Vue.JS入门学习随笔
PS:先说说学习Vue的缘由吧,学习完了React之后,突然发现又出了一款叫做vue的框架,而且据说可以引领又一波新框架的潮流,我容易吗我!!! Vue.js(读音 /vjuː/, 类似于view ...
- vue.js 入门学习
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- VUE.js入门学习(4)-动画特效
1.VUE中CSS动画原理(more是 v-enter 具体的根据 name的来决定) 动画是通过在某一时间段来添加样式决定的. 要通过 transition进行包裹. 2.在VUE中使用 anim ...
- VUE.js入门学习(2)-基础精讲
1.VUE 实例 - 一个项目是有很多的vue实例拼装的.每一个组建就是vue的实例. var vm = new Vue() 2.VUE 实例生命周期钩子 生命周期函数:VUE实例在某一个时间点会自动 ...
- vue.js入门学习
可以用淘宝npm镜像 然后安装 然后初始化项目: Watch就是一个监听 v-if是如果为false就根本不在页面存在这个元素 v-show是通过display:none来控制这个元素的显示和隐藏 r ...
- VUE.js入门学习(3)-深入理解VUE组建
1.使用组件的细节点 (1)is="模版名" (2)在子组建定义data的时候,data必须是一个函数,而不能是一个对象,每个子组建都有自己的数据存储.之间不会相互影响. (3)操 ...
- VUE.js入门学习(5)- 插槽和作用域插槽
插槽: (1)用法 以前的写法:如果内容很多的话,就很烂了- 插槽写法:(PS:组建名不能用保留关键字) (2)具名插槽 (3)作用域插槽 必须template开始和结尾,这个插槽要声明我从子组建接收 ...
- 免费的 Vue.js 入门与进阶视频教程
这是我免费发布的高质量超清「Vue.js 入门与进阶视频教程」. 全网最好的.免费的 Vue.js 视频教程,课程基于 Vue.js 2.0,由浅入深,最后结合实际的项目进行了最棒的技术点讲解,此课程 ...
- Vue.js 入门:从零开始做一个极简 To-Do 应用
Vue.js 入门:从零开始做一个极简 To-Do 应用 写作时间:2019-12-10版本信息:Vue.js 2.6.10官网文档:https://cn.vuejs.org/ 前言 学习 Vue ...
随机推荐
- 017、MySQL取第4本季度开始和结束日期
#取第4本季度开始和结束日期 SELECT QUARTER ( adddate( dy, ) ) QTR, date_add( dy, INTERVAL MONTH ) Q_start, adddat ...
- 安装mysql server5.5 到start service未响应解决方法
打开C盘,然后修改 "组织" => "查看"(如下图) 里面的 "隐藏受保护的操作系统文件" (系统这是会弹出警告,不 ...
- WMware workstation 镜像文件
https://mirrors.aliyun.com/centos/7.4.1708/isos/x86_64/
- php5.3不支持 ereg、ereg_replace等函数问题
在php5.3环境下运行oscommerce,常常会出现Deprecated: Function ereg() is deprecated in...和Deprecated: Function ere ...
- Setup Factory删除TODO文件
s1= Shell.GetFolder(SHF_STARTMENUPROGRAMS);s2 = String.Concat(s1, "\\*\\TODO");//将*替换成项目名F ...
- DNS原理和智能DNS及CDN
CDN是什么 CDN(Content Delivery Network)是内容分发网络. 作用: 使用户可以就近取的所需要的内容,加速用户访问网站资源的速度.物理距离更近,响应速度更快.拦截部分网络请 ...
- (转)Navicat Premium 连接Oracle 数据库(图文教程)
Navicat premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到MySQL.SQLite.Oracle及PostgreSQL 资料库,让管理不同类型 ...
- 7.Python列表
.button, #logout { color: #333; background-color: #fff; border-color: #ccc; } span#login_widget > ...
- Python MongoDB 创建集合
章节 Python MySQL 入门 Python MySQL 创建数据库 Python MySQL 创建表 Python MySQL 插入表 Python MySQL Select Python M ...
- Linux基础命令层级图-01
Linux基础命令层级图-01: