Vue实现简单的留言板


Posted in Javascript onOctober 23, 2020

本文实例为大家分享了Vue实现简单的留言板的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title></title>
 <link rel="stylesheet" type="text/css" href="css/bootstrap.css" />
 <style type="text/css">
 body {
 /* margin: 0; */
 padding-left: 10px;
 }
 #app{
 width: 400px;
 height: auto;
 }
 .form-group {
 margin-top: 10px;
 }
 
 .form-group textarea {
 resize: none;
 height: 144px;
 width: 391px;
 border-radius: 5px;
 padding-left: 16px;
 line-height: 16px;
 padding-top: 10px;
 font-size: 16px;
 }
 .content{
 height: 244px;
 width: 391px;
 border-radius: 5px;
 padding-left: 16px;
 line-height: 10px;
 padding-top: 10px;
 font-size: 16px;
 border:1px solid #ccc;
 position: relative;
 padding-right: 10px;
 margin-bottom: 10px;
 /* 纯字母或者数字导致不能换行 */
 word-break:break-all; 
 word-wrap:break-word;
 }
 .p_img{
 height: 60px;
 width: 65px;
 background-color: #ccc;
 }
 .p_img>img{
 display: block;
 height: 100%;
 width: 100%;
 }
 .p_cont{
 position: absolute;
 top: 10px;
 left: 85px;
 line-height: 24px;
 padding-right: 10px;
 width: 300px;
 height: auto;
 background-color: #ccc;
 }
 .people{
 position: absolute;
 left: 13px;
 top: 85px;
 }
 .timeDate{
 position: absolute;
 right: 10px;
 bottom: 10px;
 }
 </style>
 </head>
 <body>
 <div id="app">
 <form action="#" method="">
 <div class="form-group">
 <label for="usename">用户名:</label>
 <input type="text" name="username" id="username" v-model="username" placeholder="请输入名字">
 </div>
 <div class="form-group">
 <p><label for="cont">评论内容:</label></p>
 <textarea v-model="cont" placeholder="请输入内容"></textarea>
 </div>
 <div class="form-group" style="text-align: center;">
 <input type="button" value="添加" @click="add">
 <input type="reset" value="删除" @click="remove()">
 </div>
 </form>
 <div v-show="this.arr.length == 0">暂无留言</div>
 <div class="content" v-for="item in arr">
 <div class="p_img">
 <img :src="imgUrl"></img>
 </div>
 <div class="people">
 {{item.username}}
 </div>
 <div class="p_cont">
 <span>{{item.cont}}</span>
 </div>
 <div class="timeDate">
 {{item.timer | dataFormat}}
 </div>
 </div>
 
 </div>
 <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
 <script>
 // 定义全局过滤器进行时间格式化
 Vue.filter('dataFormat', function(dataStr, pattern) {
 // 根据给定的时间字符串,得到特定的时间
 console.log(dataStr)
 var dt = new Date(dataStr)
 var y = dt.getFullYear()
 var m = dt.getMonth()
 var d = dt.getDate()
 // return `${y} - ${m} -${d}`
 if (pattern && pattern.toLowerCase() === 'yyyy-mm-dd') {
 return `${y} - ${m+1} -${d}`
 } else {
 var hh = dt.getHours()
 var mm = dt.getMinutes()
 var ss = dt.getSeconds()
 return `${y}年${m+1}月${d}日 ${hh}:${mm}:${ss}`
 }
 })
 
 var app = new Vue({
 el: '#app',
 data: {
 username: '',
 cont:'',
 arr: [],
 imgUrl:"./images/people.jpg",
 // imgUrl:"http://wx2.sinaimg.cn/bmiddle/006WWRhNgy1gbn1bc3itdj31410u0q7y.jpg",
 // index:0
 ctime:new Date()
 },
 methods: {
 add(){
 this.arr.unshift({
 username:this.username,
 cont:this.cont,
 timer:this.ctime
 });
 this.username = '';
 this.cont = "";
 this.timer = ""
 },
 
 remove(index){
 this.arr.splice(index, 1);
 }
 }
 });
 </script>
 </body>
</html>

效果图:

Vue实现简单的留言板

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

更多vue学习教程请阅读专题《vue实战教程》

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js动态设置div的值下例子
Oct 29 Javascript
JavaScript 封装一个tab效果源码分享
Sep 15 Javascript
JS截取与分割字符串常用技巧总结
Nov 10 Javascript
jQuery实现多级联动下拉列表查询框
Jan 18 Javascript
浅谈jQuery中的checkbox问题
Aug 10 Javascript
JS正则获取HTML元素的方法
Mar 31 Javascript
Js自定义多选框效果的实例代码
Jul 05 Javascript
vue-cli开发时,关于ajax跨域的解决方法(推荐)
Feb 03 Javascript
vue2.0 实现导航守卫(路由守卫)
May 21 Javascript
详解vue-cli 本地开发mock数据使用方法
May 29 Javascript
JS学习笔记之原型链和利用原型实现继承详解
May 29 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
Jan 29 Javascript
Vue+Bootstrap收藏(点赞)功能逻辑与具体实现
Oct 22 #Javascript
JavaScript实现简易计算器小功能
Oct 22 #Javascript
vue实现简单加法计算器
Oct 22 #Javascript
微信小程序实现选项卡滑动切换
Oct 22 #Javascript
微信小程序实现文件预览
Oct 22 #Javascript
解决新建一个vue项目过程中遇到的问题
Oct 22 #Javascript
解决vue安装less报错Failed to compile with 1 errors的问题
Oct 22 #Javascript
You might like
德劲1103的维修打理经验
2021/03/02 无线电
PHP面向对象精要总结
2014/11/07 PHP
php轻量级的性能分析工具xhprof的安装使用
2015/08/12 PHP
浅谈PHP eval()函数定义和用法
2016/06/21 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
jquery多行滚动/向左或向上滚动/响应鼠标实现思路及代码
2013/01/23 Javascript
JavaScript cookie的设置获取删除详解
2014/02/11 Javascript
javascript 获取iframe里页面中元素值的方法
2014/02/17 Javascript
JavaScript异步编程Promise模式的6个特性
2014/04/03 Javascript
使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
2015/08/21 NodeJs
jquery实现可旋转可拖拽的文字效果代码
2016/01/27 Javascript
前端js文件合并的三种方式推荐
2016/05/19 Javascript
基于javascript的异步编程实例详解
2017/04/10 Javascript
Bootstrap treeview实现动态加载数据并添加快捷搜索功能
2018/01/07 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
使用jQuery动态设置单选框的选中效果
2018/12/06 jQuery
[01:08:24]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第一场 2月5日
2021/03/11 DOTA
将图片文件嵌入到wxpython代码中的实现方法
2014/08/11 Python
Python标准库之sqlite3使用实例
2014/11/25 Python
python实现数据库跨服务器迁移
2018/04/12 Python
浅析python3字符串格式化format()函数的简单用法
2018/12/07 Python
彻底理解Python中的yield关键字
2019/04/01 Python
python3用urllib抓取贴吧邮箱和QQ实例
2020/03/10 Python
keras的ImageDataGenerator和flow()的用法说明
2020/07/03 Python
python实现自动清理重复文件
2020/08/24 Python
详解三种方式实现平滑滚动页面到顶部的功能
2019/04/23 HTML / CSS
德国前卫设计师时装在线商店:Luxury Loft
2019/11/04 全球购物
计算机专业毕业生求职信
2014/04/30 职场文书
大专应届毕业生求职信
2014/07/15 职场文书
灵山大佛导游词
2015/02/04 职场文书
大学生年度个人总结
2015/02/15 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
python使用XPath解析数据爬取起点小说网数据
2021/04/22 Python
用Python selenium实现淘宝抢单机器人
2021/06/18 Python
Python编程super应用场景及示例解析
2021/10/05 Python