根据上一节搭建的hello-world工程(包含Router),用Webstorm打开,我们先运行一下工程。

界面如下

..

我将在About里面介绍一下Vue的相关内容。

打开About.vue,修改内容为:

<template>
<div class="about">
<h1>{{msg}}</h1>
</div>
</template>
<script>
export default {
data: ()=> ({
msg: '我的第一个Vue'
})
}
</script>

结果:

-------------------------------------------------------------------

看起来很简单,实际上Vue在背后做了大量工作,数据和DOM模型已经建立了关系,所有东西都是响应式的。比如:

<template>
<div class="about">
<h1 v-bind:title="msg">鼠标悬停几秒钟查看此处动态绑定的提示信息!</h1>
</div>
</template>
<script>
export default {
data: ()=> ({
msg: '页面加载于 ' + new Date().toLocaleString()
})
}
</script>

查看页面:

你这里看到的v-bind是vue的指令,它能将数据绑定到DOM元素的具体属性上,这里绑定到了title属性上

-------------------------------------------------------------------

再来看一个明显一点的数据绑定

<template>
<div class="about">
<h1 v-text="msg"></h1>
<input type="text" v-model="msg"/>
</div>
</template>
<script>
export default {
data: ()=> ({
msg: ''
})
}
</script>

页面:

这里的v-model是表单控件绑定,只能用于<input>、<select>、<textarea>和components。在上面的例子中,数据msg绑定到input和h1,所以修改input内容就能改变标题的内容。

-------------------------------------------------------------------下面简单介绍一下条件和循环

If

<template>
<div class="about">
<h1 v-if="show">如果为true你就能看到</h1>
</div>
</template>
<script>
export default {
data: ()=> ({
show: true
})
}
</script>

页面:

For

<template>
<div class="about">
<p v-for="i,index in data" :key="index" v-text="i"></p>
</div>
</template>
<script>
export default {
data: ()=> ({
data: ['Apple','Banana','Orange']
})
}
</script>

页面:

-------------------------------------------------------------------事件处理 v-on

<template>
<div class="about">
<button v-on:click="reverseMessage">翻转</button>
<p>{{ message }}</p>
</div>
</template>
<script>
export default {
data: ()=> ({
message: 'Hello Vue.js!'
}),
methods: {
reverseMessage: function () {
this.message = this.message.split('').reverse().join('')
}
}
}
</script>

页面:

-------------------------------------------------------------------简单介绍一下组件

在components目录下面新建一个vue文件,MyList.vue

输入内容

MyList.vue

<template>
<li>{{dataList.text}}</li>
</template> <script>
export default {
name: "MyList",
// props是vue的一个特性,props 可以是数组或对象,用于接收来自父组件的数据
props: ['dataList']
}
</script> <style scoped> </style>

About.vue

<template>
<div class="about">
<ul>
<!--组件:my-list,data-list是在MyList组件里面定义的props,数据从父组件传入-->
<my-list v-for="item in items" :key="item.id" :data-list="item"></my-list>
</ul>
</div>
</template>
<script>
// 引入组件
import MyList from '../components/MyList' export default {
components: {MyList},
data: ()=> ({
items: [
{id:1,text:'Apple 苹果'},
{id:2,text:'Banana香蕉'},
{id:3,text:'Orange橘子'},
]
})
}
</script>

页面:

Vue(二)简单入门的更多相关文章

  1. Vue的简单入门

    Vue的简单入门 一.什么是Vue? vue.js也一个渐进式JavaScript框架,可以独立完成前后端分离式web项目 渐进式:vue可以从小到控制页面中的一个变量后到页面中一块内容再到整个页面, ...

  2. 98、vue.js简单入门

    本篇导航: 介绍与安装 vue常用指令 一.介绍与安装 vue是一套构建用户界面的JAVASCRIPT框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层, ...

  3. 13、vue.js简单入门

    本篇导航: 介绍与安装 vue常用指令 一.介绍与安装 vue是一套构建用户界面的JAVASCRIPT框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层, ...

  4. 基于vue-cli、elementUI的Vue超简单入门小例子

    - 这个例子还是比较简单的,独立完成后,能大概知道vue是干嘛的,可以写个todoList的小例子. - 开始写例子之前,先对环境的部署做点简单的介绍,其实和Vue官方的差不多. #如若没有安装过vu ...

  5. Vue.js简单入门

    这篇文章我们将学习vue.js的基础语法,对于大家学习vue.js具有一定的参考借鉴价值,有需要的朋友们下面来一起看看. Vue.js是一个数据驱动的web界面库.Vue.js只聚焦于视图层,可以很容 ...

  6. webpack4+vue打包简单入门

    前言 最近在研究使用webpack的使用,在查阅了数篇文章后,学习了webpack的基础打包流程. 本来就可以一删了之了,但是觉得未免有点可惜,所以就有了这篇文章,供大家参考. webpack打包的教 ...

  7. vue.js 简单入门

    转载自:http://blog.csdn.net/violetjack0808/article/details/51451672 <!DOCTYPE html> <html lang ...

  8. Vue.js+vue-element搭建属于自己的后台管理模板:Vue.js快速入门(二)

    Vue.js+vue-element搭建属于自己的后台管理模板:Vue.js快速入门(二) 前言 上篇文章对Vue.js有了初步理解,接下来我们把Vue.js基础语法快速的过一遍,先混个脸熟留个印象就 ...

  9. Python 简单入门指北(二)

    Python 简单入门指北(二) 2 函数 2.1 函数是一等公民 一等公民指的是 Python 的函数能够动态创建,能赋值给别的变量,能作为参传给函数,也能作为函数的返回值.总而言之,函数和普通变量 ...

  10. 一篇文章带你了解网页框架——Vue简单入门

    一篇文章带你了解网页框架--Vue简单入门 这篇文章将会介绍我们前端入门级别的框架--Vue的简单使用 如果你以后想从事后端程序员,又想要稍微了解前端框架知识,那么这篇文章或许可以给你带来帮助 温馨提 ...

随机推荐

  1. 软件 利用 win+R 快速启动(无需添加环境变量)

    前言:以 "Typora" 软件 为例 ,无需添加环境变量,实现键盘快速启动 第一步 找到 为知笔记的快捷方式 打开文件位置 鼠标右击该软件的桌面快捷方式 复制该软件的快捷方式 第 ...

  2. python实例一

    https://www.cnblogs.com/evablogs/p/6754839.html 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析: 方法一:该 ...

  3. Github如何提交修改的代码以及更新到最新版本

    最近有人问我,Github上如何把修改fork到的代码提交到原版本上去,以及如何更新到最新的版本.只针对初学者,大神的话勿喷. 首先说第一个问题. 进入到你修改的某个repository里面(以本人的 ...

  4. zabbix3.4监控Linux客户端

    环境准备 zabbix-server IP:192.168.1.242 nds-server  IP:192.168.1.202 web-server IP:192.168.1.203 客户端部署 关 ...

  5. 【Teradata UDF】中文按字符查找chs_instr

    一.场景描述 数据库为ASCII编码单字节存储,在查询中文时可能会出现错误结果.例如查询like“房”字,会查询出不含“房”,含“朔科”的结果. select * from Tablename01 w ...

  6. 明天研究下jpa直接像django一样生成

    https://blog.csdn.net/yztezhl/article/details/79390714 自动生成 教程-- https://blog.csdn.net/mxjesse/artic ...

  7. linux下安装nodejs及npm

    转:https://www.cnblogs.com/wuyoucao/p/7011666.html 1.下载npm包 官网下载npm安装包,https://nodejs.org/en/,左边是稳定版右 ...

  8. css设置文字上下居中,一行文字居中,两行或多行文字同样居中。

    转:https://www.cnblogs.com/handsomeBoys/p/6599062.html HTML: <div class="book-detail-store-it ...

  9. 【spring源码分析】准备工作

    前言:之前写过两篇基于xml形式的IOC容器初始化过程,现在看来写的比较烂,最近又继续阅读spring源码,对IOC容器的初始化有了一些新的认识,因此决定记录下来,加深自己对spring的印象与理解. ...

  10. React Router路由传参方式总结

    首先我们要知道一个前提,路由传递的参数我们可以通过props里面的属性来获取.只要组件是被<Router>组件的<component>定义和指派的,这个组件自然就有了props ...