案例改写vue
时间:2022-06-26
本文章向大家介绍案例改写vue,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
案例一todolist:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>todolist</title>
<style type="text/css">
.list_con{
width:600px;
margin:50px auto 0;
}
.inputtxt{
width:550px;
height:30px;
border:1px solid #ccc;
padding:0px;
text-indent:10px;
}
.inputbtn{
width:40px;
height:32px;
padding:0px;
border:1px solid #ccc;
}
.list{
margin:0;
padding:0;
list-style:none;
margin-top:20px;
}
.list li{
height:40px;
line-height:40px;
border-bottom:1px solid #ccc;
}
.list li span{
float:left;
}
.list li a{
float:right;
text-decoration:none;
margin:0 10px;
}
</style>
<script src="js/vue.min.js"></script>
</head>
<body>
<div class="list_con">
<h2>To do list</h2>
<input type="text" name="" id="txt1" class="inputtxt" v-model="txt">
<input type="button" name="" value="增加" id="btn1" class="inputbtn" @click="fnAdd">
<ul id="list" class="list">
<li v-for="(i, j) in mylist"><span>{{ i }}</span><a href="javascript:;" class="up" @click="fnUp(j)"> ↑ </a><a href="javascript:;" class="down" @click="fnDown(j)"> ↓ </a><a href="javascript:;" class="del" @click="fnDel(j)">删除</a></li>
<!-- <li><span>学习css</span><a href="javascript:;" class="up"> ↑ </a><a href="javascript:;" class="down"> ↓ </a><a href="javascript:;" class="del">删除</a></li>
<li><span>学习javascript</span><a href="javascript:;" class="up"> ↑ </a><a href="javascript:;" class="down"> ↓ </a><a href="javascript:;" class="del">删除</a></li> -->
</ul>
</div>
<script>
var list_con = new Vue({
el:'.list_con',
data:{
mylist:['学习html', '学习css', '学习javascript'],
txt:''
},
methods:{
fnAdd: function(){
if(this.txt == '')
{
alert('请输入内容');
return
}
// mylist结尾追加数据 -- 用户输入的数据
this.mylist.push( this.txt );
this.txt = ''
},
fnDel: function(index){
// 在mylist删除指定的下标的数据 splice(位置下标, 删除个数, 添加的数据)
this.mylist.splice(index, 1)
},
fnUp: function(index){
// 第一个报错
if(index == 0)
{
alert('已经是第一个了');
return
}
// 选中数据 原位置删除 新位置粘贴
var myData = this.mylist[index];
this.mylist.splice(index, 1);
this.mylist.splice(index-1, 0, myData)
},
fnDown: function(index){
if(index == this.mylist.length-1)
{
alert('已经是最后一个了');
return
}
var myData = this.mylist[index];
this.mylist.splice(index, 1);
this.mylist.splice(index+1, 0, myData)
}
}
})
</script>
</body>
</html>
案例一聊天对话框:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style type="text/css">
.talk_con{
width:600px;
height:500px;
border:1px solid #666;
margin:50px auto 0;
background:#f9f9f9;
}
.talk_show{
width:580px;
height:420px;
border:1px solid #666;
background:#fff;
margin:10px auto 0;
overflow:auto;
}
.talk_input{
width:580px;
margin:10px auto 0;
}
.whotalk{
width:80px;
height:30px;
float:left;
outline:none;
}
.talk_word{
width:420px;
height:26px;
padding:0px;
float:left;
margin-left:10px;
outline:none;
text-indent:10px;
}
.talk_sub{
width:56px;
height:30px;
float:left;
margin-left:10px;
}
.atalk{
margin:10px;
}
.atalk span{
display:inline-block;
background:#0181cc;
border-radius:10px;
color:#fff;
padding:5px 10px;
}
.btalk{
margin:10px;
text-align:right;
}
.btalk span{
display:inline-block;
background:#ef8201;
border-radius:10px;
color:#fff;
padding:5px 10px;
}
</style>
<script src="js/vue.min.js"></script>
</head>
<body>
<div class="talk_con">
<div class="talk_show" id="words">
<!-- A 字典的person值 -->
<!-- 如果说话的人是a,加atalk 否则btalk -->
<div v-for="i in mylist" :class="[i.person == 'A'?'atalk':'btalk']"><span>{{ i.person }}说:{{ i.content}}</span></div>
<!-- <div class="btalk"><span>B说:还没呢,你呢?</span></div> -->
</div>
<div class="talk_input">
<select class="whotalk" id="who" v-model="who">
<option value="0">A说:</option>
<option value="1">B说:</option>
</select>
<input type="text" class="talk_word" id="talkwords" v-model="txt">
<input type="button" value="发送" class="talk_sub" id="talksub" @click="fnSend">
</div>
</div>
<script>
var vm = new Vue({
el:'.talk_con',
data:{
// 1,2, 3 1 == 说话的人是谁?说话的内容是什么
mylist:[
{person:'A', content:'吃饭了吗?'},
{person:'B', content:'还没呢,你呢?'}
],
txt:'',
who:'0'
},
methods:{
fnSend: function(){
if(this.txt == '')
{
alert('请输入内容');
return
}
// mylist追加结尾数据 -- {}
this.mylist.push({person:this.who==0?'A':'B', content:this.txt});
this.txt = ''
}
}
})
</script>
</body>
</html>
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法