【原创】基于vue。简单、优雅的评论插件(包含颜文字表情、滑动验证)。

news/2024/7/10 1:45:06 标签: 前端, vue, element

主要功能

  1. 支持颜文字emoji表情(╮( ̄▽ ̄)╭)
  2. 支持滑动验证。
  3. 评论为空不允许提交。
  4. 封装了几个常用的方法。

在线浏览

1、用户已登录

vue-comment/had_login.gif" alt="" />

2、用户未登录

vue-comment/not_login.gif" alt="" />

使用方法

vue"><template>
    <b_comment 
		ref="my_comment" 
		:placeholder="placeholder"
		:if_not_logined="if_not_logined"
        :emoji_list="emoji_list"
		:verify_once="verify_once"
		@submit_click="submit_click"
	/>
</template>

<script>
import b_comment from './vue_comment/b_comment.vue'
export default {
  name: "HelloWorld",
	components: {
		'b_comment':b_comment,
	},
  data() {
    return {
		placeholder: "想说点什么?",//默认文字提示。
        if_not_logined: true,//用户是否没有登录。
	    //颜文字列表。
		emoji_list: ['(⌒▽⌒)', '( ̄▽ ̄)', '(=・ω・=)'...],
		verify_once: false,//未登录时,每次评论都需输入验证码。
    };
  },
  computed:{
	  comment_text(){//获取子组件的评论内容。
		  return this.$refs.my_comment.insert_comment.comment_text;
	  },
	  comment_name(){//获取子组件的评论昵称。
		  return this.$refs.my_comment.insert_comment.comment_name;
	  }
  },
  methods:{
	  //点击评论按钮后,触发的事件。
	  //(在这之前会先检验是否为空、是否输入验证码)
	  submit_click(){
		  console.log("用户输入的评论内容是:" + this.comment_text);
		  if(this.comment_name !== ""){
		  		console.log("用户输入的昵称是:" + this.comment_name);
		  }

		  //你可以在这里验证用户输入的格式。
		  //若格式错误可调用此函数:
		  	//this.$refs.my_comment.err_submitFn("格式错误",1500)

		  //你可以在这儿请求AJAX
		  //失败回调:
			// this.$refs.my_comment.err_submitFn("评论失败",1500)
		  //成功回调
		    this.$refs.my_comment.success_submit("评论成功",1500)
	  }
  },
};
</script>

文档

1、属性

属性名类型描述
placeholderString默认的文字提示。
if_not_loginedString用户是否没有登录(未登录强制验证)。
emoji_listArray颜文字列表。
verify_onceBoolean验证码是否只验证一次。
comment_textString评论内容。
comment_nameString评论昵称。

2、方法

方法名描述参数列表
submit_click点击评论按钮,触发的函数。-
this.$refs.my_comment.err_submitFn(“评论失败”,1500)调用后,右下角显示错误提示。1.提示内容,string格式。2.显示时间,int格式。
this.$refs.my_comment.success_submit(“评论成功”,1500)调用后,右下角显示提示。并清除已输入内容。根据设置重置验证码组件。同上

Github地址

基于vue。简单、优雅的评论插件

说明

文档 => 优雅,界面 => 简单。
但代码有很多改进的空间。

这是我封装的第一个组件,主要是练练手。
加油以后写出更优雅、强大的代码(=・ω・=)

p.s:有空的话,我会把(同样风格的)评论列表也封装成组件。


设计参考Bilibili。【扶我起来,我还再能抄B站的设计(>_>)


http://www.niftyadmin.cn/n/1122263.html

相关文章

mysql left join,right join,inner join用法分析

下面是例子分析表A记录如下&#xff1a; aID aNum 1 a20050111 2 a20050112 3 a20050113 4 a20050114 5 a20050115 表B记录如下: bID bName 1 2006032401 2 2006032402 3 2006032403 4 2006032404 8 2006032408 创建这两个表SQL语句如下&#xff1a; CREATE TABLE a aID int( 1…

OCP-1Z0-051 第6题 case when和decode的用法

一、原题 Examine the structure of the SHIPMENTS table:Name Null TypePO_ID NOT NULL NUMBER(3) PO_DATE NOT NULL DATE SHIPMENT_DATE NOT NULL DATE SHIPMENT_MODE VARCH…

65.shell特殊符号与和cut,sort,wc,uniq,tee,tr,split命令

liunx的特殊符号 代表字母或者数字 多个 &#xff1f; 任意一个字符 "#" 注释 \ 脱义字符 | 管道符1.* 代表任意个任意字符或者数字 [rootlocalhost /]# ls *.txt 1.txt [rootlocalhost /]# 2.&#xff1f;任意一个字符 [rootlocalhost /]# ls &#xff1f;.txt 1.t…

Linux中常用压缩打包工具

Linux中常用压缩打包工具 压缩打包是常用的功能&#xff0c;在linux中目前常用的压缩工具有gzip,bzip2以及后起之秀xz。本文将介绍如下的工具常见压缩、解压缩工具以及打包工具tar. gzip2 直接压缩文件 gzip FILE 压缩只能压缩文件&#xff0c;而不能是目录&#xff1b;如果需要…

ECShop在首页调用某分类下的商品列表

先在要调用的区域里设置可编辑模板块&#xff0c;比如&#xff1a;<!– TemplateBeginEditable name"某分类区域" –><!– TemplateEndEditable –> 后台“模板管理——设置模板”里有“分类下的商品”&#xff0c;可以调用设置。 然后在修改cat_goods.l…

grep 查找当前文件夹下所有文件内内容 并显示文件名

grep -H comm * 显示结果 rclog:recommend/ysclick,1,2 rclog:recommend/utagclick,1,8 .................... tudoulog:recommend/tvshow,1,0 tudoulog:recommend/tvclick,1,0 .................... uclog:usercenter/comment,1,0 .................... 转载于:https://www.cn…

实验吧_认真一点(各种绕过下的盲注)

打开链接&#xff0c;看到这个页面&#xff0c;一脸又是sql注入的样子 翻翻源码没有任何提示 打开burp开始抓包&#xff0c;包头与返回头又没有任何提示&#xff0c;试着开始修改ID 的值&#xff0c;观察页面变化 当我输入id1时&#xff0c;页面返回“you are not in.......”&…

OCP-1Z0-051 第13题 q操作符

一、原题 View the Exhibit and examine the structure of the PRODUCTS table. You need to generate a report in the following format:CATEGORIES5MP Digital Photo Cameras category is PhotoY Boxs category is ElectronicsEnvoy Ambassadors category is HardwareWhich…