<!DOCTYPE html>
<html> <head>
<meta charset="utf-8" />
<title></title>
<style>
.active {
color: red;
} .text-success {
color: #009966;
font-size: 20px;
} .fontWeight {
font-weight: bold;
}
</style>
</head> <body>
<div id="list">
<ul>
<div v-bind:class="[fontWeight,textSuccess]">欢迎品尝</div>
<input type="text" v-model="moonstuffing" maxlength="5" placeholder="请输入您喜欢的月饼馅" />
<div v-bind:class="classObject">中秋节月饼馅</div>
<li v-for="item in mooncake">{{item}}</li> </ul>
<div v-bind:style="obj">花好月圆夜</div>
<my-component v-bind:class="textSuccess" v-bind:message="txt"></my-component>
<!--自定义UI组件--> <user-input v-if="ok" :message="user.loginType" :changevalue="changevaluefn" :values="username" :types="user.textType" :placeholdertext="user.placeText" key="username"></user-input>
<user-input v-else :message="user.loginType" :changevalue="changevaluefn" :values="useremail" :types="user.textType" :placeholdertext="user.placeText" key="useremail"></user-input> <button @click="change">点击切换</button> <hr /> <!--<template> 元素当做包装元素-->
<template v-if="qiehuan">
<label>Username</label>
<input placeholder="Enter your username" key="username-input">
</template> <template v-else>
<label>Email</label>
<input placeholder="Enter your email address" key="email-input">
</template> <button @click="tab">点击切换(使用包装元素)</button> <hr /> <div v-show="ok">
哈哈我显示了
</div> <!-- v-for v-if 结合使用-->
<h1> v-for v-if 结合使用</h1>
<ul>
<li v-for = "item in money" v-if="item.price <= 40">{{item.txt}}</li> </ul> </div>
</body>
<script src="js/vue.js"></script> <script type="text/javascript">
Vue.component('user-input', {
template: '<div><label>{{message}}</label><input :value="values" @input="changevalue" @onpropertychange="changevalue" :type="types" :placeholder="placeholdertext"></div>',
props: ["message", "types", "placeholdertext","values","changevalue"], }) Vue.component('my-component', {
template: '<p class="foo bar">{{message}}</p>',
props: ["message"]
}) var moon = new Vue({
el: "#list",
data: {
ok:true,
qiehuan:true,
isActive: true,
isSuccess: true,
moonstuffing: '',
mooncake: ["蛋黄", "五仁", "豆沙", "莲蓉"],
fontWeight: "fontWeight",
textSuccess: "text-success",
txt: "哈哈",
activeColor: "red",
fontSize: 60,
obj: {
color: "red",
fontSize: "60px"
},
user: {
loginType: "username",
textType: "email",
placeText: "请输入用户名"
},
username:'用户名',
useremail:'邮箱',
money:[
{price: 10,txt:"10元"},
{price: 20,txt:"20元"},
{price: 30,txt:"30元"},
{price: 40,txt:"40元"},
{price: 50,txt:"50元"},
{price: 60,txt:"60元"},
{price: 70,txt:"70元"},
{price: 80,txt:"80元"}
] },
methods: { change: function() {//点击按钮切换 if(this.ok) {
this.ok = false;//控制组件显示隐藏 this.user = {
loginType: "email",
textType: "email",
placeText: "请输入邮箱"
} } else { this.ok = true;//控制组件显示隐藏 this.user = {
loginType: "username",
textType: "text",
placeText: "请输入用户名"
} } },
changevaluefn:function(e){//监听值变化
var e = e || window.event;
var target = e.target || e.srcElement; if(this.ok) {
this.username = target.value //接收用户名
} else {
this.useremail = target.value//接收邮箱 }
},
tab:function() {//点击按钮切换 if(this.qiehuan) {
this.qiehuan = false; } else { this.qiehuan = true;//控制组件显示隐藏 } }
},
watch: { //监听数据发送改变
moonstuffing: function(newValue, oldValue) { //监听属性
console.log(oldValue)
if(newValue != '') {
moon.mooncake.push(newValue)
moon.isActive = true;
} else {
moon.isActive = false;
}
}
}, computed: {
classObject: function() {
return {
active: this.isActive,
'text-success': this.isSuccess
}
}
}
})
</script> </html>

》》vue的更多相关文章

  1. 《《我是一只IT小小鸟》》读后感

    接触IT也已经半年了,在这半年我没有充足的时间去了解IT这个行业,在大学生职业规划课程上,老师推荐了<<我是一只IT小小鸟>>这本书,我才发现IT这个行业并不是想象的那么无趣, ...

  2. 【图文详细教程】maven3安装配置+eclipse离线安装maven3插件《《唯一成功的教程~~~2018-01-09》》

    环境搭建前提: 1.电脑上已经安装了1.7以及以上版本的JDK(因为我提供的maven版本是最新的3.3.9的,要求最低JDK1.7) 2.配置好了ecplise并且能正常启动 第一步:下载maven ...

  3. jsp---》》》新闻发布系统的项目跟踪+++++++文件上传

    先来一个分层架构图: WeebRoot目录下的页面: 现在,此项目以实现登录,注销,新闻列表,编辑主题>>>> 先来登录部分的关键代码 index.jsp中的代码 userIn ...

  4. 读《《图解TCP-IP》》有感

    读<<图解TCP/IP>>有感 TCP/IP 近期几天读完<<图解TCP/IP>>,收获蛮多,记得上学时读stevens的<<TCP/IP具 ...

  5. heavy dark--读《《暗时间》》

    本书名为<<暗时间>>,个人觉得是一个非常好的名字:1.迷茫的大学生有多少的业余时间,但又浪费多少的业余时间,浪费的这莫多时间就如同人在黑夜中一样,大脑是在休息的状态.这是第一 ...

  6. hadoop 》》 django 简单操作hdfs 语句

    >> from django.shortcuts import render # Create your views here. from hdfs.client import Clien ...

  7. 实体类在Windows程序中的高级应用--------------------》》心境是一种境界。

    一.事务 我们在大家学到这,或多或少对事务都有一些理解了.今天的我也对事务有了更深一层的理解对我来说,我想与大家一起分享一下. 解析: 1.ADO.NET提供了事务处理功能 2.C#中开启事务 3.在 ...

  8. eclipse更改workspace中出现The superclass "javax.servlet.http.HttpServlet" was not found on the Java----问题》》

    第一步:那是因为在项目中没有告诉它应该在哪个tomcat中运行,右击项目名称----->build path-->configure   path---->library------ ...

  9. PHP两种基础的算法:冒泡、快速排序法》》》望能够帮助到大家

    首先扯个淡@@@@@@@@@ 算法是程序的核心,一个程序的好坏关键是这个程序算法的优劣. 冒泡排序法 原理:在要排序的一组数中,对当前还未排好的序列,从前往后对相邻的两个数依次进行比较和调整,让较大的 ...

随机推荐

  1. EasyUI实现购物车、菜单和窗口栏等最常用的用户界面功能

    一.EasyUI jQuery EasyUI 是一个基于 jQuery 的框架,集成了各种用户界面插件. easyui 提供建立现代化的具有交互性的 javascript 应用的必要的功能. 使用 e ...

  2. Java简单实现UDP和TCP

    TCP实现 TCP协议需要在双方之间建立连接,通过输入输出流来进行数据的交换,建立需要通过三次握手,断开需要四次挥手,保证了数据的完整性,但传输效率也会相应的降低. 简单的TCP实现 //服务端 pu ...

  3. AngularJS学习篇(二十四)

    AngularJS 应用 <html ng-app="myNoteApp"> <head> <meta charset="utf-8&quo ...

  4. AJAX 笔记

    一.什么是 AJAX ? AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 是一种用于创建快速动态网页的技术. 通过 ...

  5. redhat7 邮件服务搭建

    一.先搭建DNS服务,在正向和反向区域文件分别添加以下配置 cd /var/named 目录下 ① vi abc.com.zone 正向区域文件,添加以下内容 @ MX  5 mail.test.cn ...

  6. scrapy爬虫框架之理解篇(个人理解)

    提问: 为什么使用scrapy框架来写爬虫 ?            在python爬虫中:requests  +  selenium  可以解决目前90%的爬虫需求,难道scrapy 是解决剩下的1 ...

  7. day2--命令总结

    1.mkdir               创建目录  -p递归(用来创建层级目录,底层目录不存在) 2.touch               创建文件 3.ls                  ...

  8. linux下mysql启动出错

    1.刚安装完就启动出错,是因为没有开msql服务,开启即可,service mysql start 2.MySQL: mysql is not running but lock exists rm / ...

  9. [转载] Linux内存管理之mmap详解

    转载自http://blog.chinaunix.net/uid-26669729-id-3077015.html 一. mmap系统调用 1. mmap系统调用 mmap将一个文件或者其它对象映射进 ...

  10. [转载] 使用HTML5的十大原因

    转载自http://www.williamlong.info/archives/3024.html 你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在IE中不 ...