根据上一节搭建的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. [20190415]10g下那些latch是共享的.txt

    [20190415]10g下那些latch是共享的.txt http://andreynikolaev.wordpress.com/2010/11/23/shared-latches-by-oracl ...

  2. 常用SMTP地址

    1.QQ邮箱(mail.qq.com) POP3服务器地址:pop.qq.com(端口:110) SMTP服务器地址:smtp.qq.com(端口:25) 2.搜狐邮箱(sohu.com): POP3 ...

  3. centos6.5上进行crontab操作

    1.service crond start 2. vi  /home/cron.ini */ * * * * /home/monitor.sh 3.crontab  /home/cron.ini OK

  4. iOS 限制TextField输入长度(支持删除)

    if (textField == _phoneTF) { //支持删除 && ) { return YES; } ) { _phoneTF.text = [textField.text ...

  5. Linux学习历程——Centos 7 mkdir命令

    一.命令介绍 mkdir 命令用于创建空白目录格式为“mkdir [选项] 目录”, 除了能够创建单个空白目录,还能结合 -p 参数来递归创建具有嵌套层叠关系的文件目录. -------------- ...

  6. SQL Server 数据库状态选项-用户使用

    选项 1. single_user(单用户),multi_user(多用户),restricted_user(受限用户); 描述数据库的用户访问属性,它们互斥,设置其中任何一个选项就会取消对其它选项的 ...

  7. windows 为qt5.7.1 安装openssl

    本人使用qt5.7.1+msvc2015写一个https的客户端程序,但是用到解析https协议时,报出如下错误 qt.network.ssl: QSslSocket: cannot call unr ...

  8. python3 shell 中添加清屏

    在windows中: 安装目录 \Lib(  D:\Python37\Lib) 中添加 ClearWindow.py 文件,文件内容: """ Clear Window ...

  9. Python基础——3特性

    特性 切片 L=[0,1,2,3,4,5,6,7,8,9,10] L[:3]=[0,1,2] L[-2:]=[9,10] L[1:3]=[1,2] L[::3]=[0,3,6,9] L[:5:2]=[ ...

  10. 【Python 24】52周存钱挑战4.0(函数)

    1.案例描述 按照52周存钱法,存钱人必须在一年52周内,每周递存10元.例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元. 记录52周后能存多少钱?即10+20+30+. ...