初识vue——语法初解
这次我们按照官网上的教程对vue的语法进行一个初步的了解;
一、声明式渲染
Vue.js的核心是一个允许采用简洁的模板语法来声明式的将数据渲染仅DOM的系统:
1、我们在HelloWorld里面输入下面代码:
<template>
<div class="hello">
<div class="title">
{{ msg }}
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
msg: 'This is a title'
}
}
}
</script>

2、接下来我们还可以绑定元素属性:
<template>
<div class="hello" @click="one()">
<div class="title">
{{ msg }}
<span v-bind:title="message">悬浮</span>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
msg: 'This is a title',
message: '页面加载于' + new Date().toLocaleString(),
}
}
}
</script>

二、条件与循环
1、条件:
<template>
<div class="hello" @click="one()">
<div id="if">
<p v-if="seen">现在你看到我了~</p>
</div>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
data () {
return {
seen: true
}
}
}
</script>

2、循环
<template>
<div class="hello" >
<div id="for">
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
todos:[
{text: '玫瑰'},
{text: '红枣'},
{text: '枸杞'}
]
}
}} </script> <style scoped>
#for{
width: 100px;
margin: 0 auto;
color: lightsalmon;
}
</style>

三、处理用户输入
1、逆转消息
<template>
<div class="hello" >
<div id="reverse">
<p>{{ message_re }}</p>
<button v-on:click="reverseMessage">逆转消息</button>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
message_re: '玫瑰五宝茶'
}
},
methods:{
reverseMessage:function(){
this.message_re =this.message_re.split('').reverse().join('')
}
}}
</script> <style scoped>
#reverse button{
width: 100px;color: #ffffff;border: none;background: coral;height: 30px;border-radius: 10px;letter-spacing: 1px;
}
</style>


2、表单输入和应用状态的双向绑定
<template>
<div class="hello" >
<div id="show_input">
<p>{{ message_in }}</p>
<input v-model="message_in" />
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
message_in: '桂圆'
}
}}
</script>


四、组件化应用构建
组件系统是Vue里面另一个重要的概念,允许我们使用小型,独立的,复用率高的组件构建大型应用;
#main.js
Vue.component('doit-item', {
props: ['doit'],
template: '<li>{{ doit.text }}</li>'
}) new Vue({
el: '#app',
router,
template: '<App/>',
components: { App }
})
<template>
<div class="hello" >
<div id="doit">
<ol>
<doit-item v-for="item in groceryList" v-bind:doit='item' v-bind:key="item.id"></doit-item>
</ol>
</div>
</div>
</template> <script>
export default {
name: 'HelloWorld',
data () {
return {
groceryList: [
{ id: 0, text: '金桔' },
{ id: 1, text: '柠檬' },
{ id: 2, text: '半柠半橘' }
]
}
}}
</script>
<style scoped>
#for,#doit{
width: 150px;margin: 0 auto;color: lightsalmon;
}
</style>

初识vue——语法初解的更多相关文章
- vue第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法)
第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法) #课程目标 了解 vue 框架的特点 掌握创建 vue 实例 掌握 data ...
- 第1章-初识Vue.js
一.初识Vue 1.1.本次我们学习的内容 常用指令:vue中最基础的内容 交互: 网络请求 组件: 是vue.js 这个框架 最核心,最精华的内容,因为vue呐,它在所有的框架中是把组件化做到了极致 ...
- vue语法之拼接字符串
先来一行代码: <div class="swiper-slide" v-for="item in message"> <img v-bind: ...
- Sublime Text2支持Vue语法高亮显示
1.下载vue语法高亮插件vue-syntax-highlight 下载地址:https://github.com/vuejs/vue-syntax-highlight 2.将vue-syntax-h ...
- 人人开源分模块,非原生html报错,很难查找问题所在,有vue语法
<!DOCTYPE html> <html> <head> <title>学生表</title> #parse("sys/head ...
- 初识vue小结
初识vue 大家都那么热爱他一定有原因,我也特想了解. 我来咯, 首先用vue开发版,用一个标签在head中插入,script标签src属性引入vue文件,就像jquey一样在script,但是放在h ...
- sublime text 3 vue 语法高亮
1.下载文件 链接 https://github.com/vuejs/vue-syntax-highlight 2.sublime菜单栏->Preferences->Browse Pack ...
- python 全栈开发,Day89(sorted面试题,Pycharm配置支持vue语法,Vue基础语法,小清单练习)
一.sorted面试题 面试题: [11, 33, 4, 2, 11, 4, 9, 2] 去重并保持原来的顺序 答案1: list1 = [11, 33, 4, 2, 11, 4, 9, 2] ret ...
- vue语法精简(方便开发查阅)
vue语法精简(方便开发查阅) 指令 特殊的标签和属性 变异方法 事件修饰符 按键修饰符 表单修饰符 生命周期函数 计算属性 监听属性 子组件通过事件向父组件传递信息 在组件上使用v-model 动画 ...
随机推荐
- Spring中Quartz的配置及corn表达式
Quartz可以用来执行任务调度功能,如间隔一定时间调用执行任务.用起来还是蛮方便的.只要将你要调用的类配置到Spring配置文件即可. 在Spring的配置文件中配置Quartz. <!-- ...
- Part 4:表单和类视图--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- TCP之再谈解决服务器TIMEWAIT过多的问题
原则 TIMEWAIT并不是多余的.在TCP协议被创造,经历了大量的实际场景实践之后,TIMEWAIT出现了,因为TCP主动关闭连接的一方需要TIMEWAIT状态,它是我们的朋友.这是<UNIX ...
- Android webView包装WebAPP
前言 Android webView 兼容体验真的差到了极点!! 前一阵子,老板要讲 WebAPP 放到 Android 和 iOS 里面,而我因为以前做过安卓,所以这方面就由我来打包, 原理是很简单 ...
- JDK及Tomcat集成到MyEclipse
JDK及Tomcat集成到MyEclipse 1.安装好MyEclipse 2.破解 3.配置环境JDK D:\jdk1.6.0_21\bin; ==>放在系统path前面 4.打开MyEcli ...
- python selenium+phantomjs alert()弹窗报错
问题:用selenium+phantomjs 模拟登陆,网页用JavaScript的alert("登陆成功")弹出框,但是用switch_to_alert().accept()报错 ...
- mysql安装(CentOS 7.1 (64-bit system) MySQL 5.6.24)
环境:CentOS 7.1 (64-bit system) MySQL 5.6.24yum install libaio //安装依赖的包wget http://dev.mysql.com/get/m ...
- LANMP系列教程之MySQL编译安装CentOS7环境
以MySQL5.5.33版本为例 1.准备工作: 1.首先准备好源代码包 2.并且确保已安装好 "开发工具" 包组和cmake编译工具 3.确保安装好ncurses-devel ...
- 再看Java基本类型
Java中的基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte.short.int.long.float.double. 数值类型又可以分为整数类型byte.short ...
- vue2.0父子组件之间通信
父组件是通过props属性给子组件通信的来看下代码: 父组件: <parent> <child :child-com="content"></chil ...