新项目要求用typescript+vue+elementui的模式来搭建pc项目,最初踩了好多坑.
产品说提示不想用element-ui的提示. 打算用toast的形式.
所以就自己写了一个pc的toast(又能结合ts) 
然后放上来和大家分享一下,

最初是自己写的一个component,
后面想着以后也方便用,就试了一下以npm包传上去.
toast源码

安装

这款toast是基于vue使用的,所以需要在vue的大环境下去安装使用.

npm i easytoast-f-vue --save

参数

  1.  
    //toast文案
  2.  
    text?: string;
  3.  
    //持续时间(ms)
  4.  
    duration?: number;
  5.  
    //蒙层背景色(支持直接写色号,rgb,rgba,英文单词)
  6.  
    background?: string;
  7.  
    //toast背景色
  8.  
    toastBackground?: string;
  9.  
    //toast文字颜色
  10.  
    textColor?: string;
  11.  
    //toast文字排列(适用于当出现文字太长出现换行)
  12.  
    textAlign?: textAlign;
  13.  
    //toast的最大宽度(默认为400px)
  14.  
    max?: number;
  15.  
    //支持html输入(预留允许输入html串)
  16.  
    content?: string;
  • 默认的duration是2s
  • 默认的字体颜色是白色,toast背景是rgba(0,0,0,.5)
  • 如果使用html片段,设置的text参数和textColor参数和textAlign参数和max参数会失效.
  • 如果使用html片段,会校验是否有输入 script标签和a标签

使用

在入口的main.js或者main.ts中,

  1.  
    import myToast from 'easytoast-f-vue';
  2.  
    Vue.use(myToast);

然后在具体需要使用的页面中,

  1.  
    //普通的文字toast
  2.  
    this.$ftoast({
  3.  
    text: 'TOAST',
  4.  
    background: 'rgba(0, 0, 0, .5)',
  5.  
    textColor: 'pink',
  6.  
    toastBackground: 'rgba(255, 255, 255, 1)'
  7.  
    })
  8.  
     
  9.  
    //html式的toast
  10.  
    this.$ftoast({
  11.  
    text: 'TOAST',
  12.  
    background: 'rgba(0, 0, 0, .5)',
  13.  
    textColor: 'pink',
  14.  
    toastBackground: 'rgba(255, 255, 255, 1)',
  15.  
    content: '<div class="t"><p class="r">红色的字</p><p>蓝色的字</p></div>'
  16.  
    })

普通的toast

html的toast (我发现如果html的toast要使用图片资源,需要放在静态文件夹,这种固定路径的才能识别到)


发npm包

顺便讲讲怎么简单发npm包

  • 首先先到官网注册一下账号 npm官网
  • 创建一个文件夹,然后打开终端在此处进行 npm init 的操作.
  • 里面会涉及到(name, version, 等等的信息填写) 不断的下一步即可.
  • init完会生成一个package.json的文件 (和我们cli出来的package.json可以共用)
  1. 此处要注意一下. main这个参数是指一个路径, 当别人import你这个包的时候,的入口文件是哪个.
  2. 如果涉及到typescript的types(d.ts文件时), 要在package.json里面增加一个 "typings"参数路径,引用向对应的d.ts即可
  3. 所有东西都可以自行在package.json里面修改.
  • 然后把相关的代码自行拷贝到这个文件夹中.
  • 操作完执行 npm login 进行登录操作.
  • 登录完毕后 执行 npm publish 就可以发布了.
  • 后续的更新操作是遵循这样的规则.
    1. 有分3种形式 npm version (patch, minor, major)
    2. patch是指小补丁 从 1.0.0 更新为 1.0.1
    3. minor是指小改动 从 1.0.0 更新为 1.1.0
    4. major是指大改动 从 1.0.0 更新为 2.0.0
    5. 选择完对应的进行 npm version ** 然后再执行一次 npm publish 即可.

VUE一款适用于pc平台的简单toast的更多相关文章

  1. PLDroidPlayer 是七牛推出的一款免费的适用于 Android 平台的播放器 SDK,采用全自研的跨平台播放内核,拥有丰富的功能和优异的性能,可高度定制化和二次开发。 https://developer.qiniu.com/pili/sdk/…

    PLDroidPlayer PLDroidPlayer 是一个适用于 Android 平台的音视频播放器 SDK,可高度定制化和二次开发,为 Android 开发者提供了简单.快捷的接口,帮助开发者在 ...

  2. 第二次作业-关于Steam游戏平台的简单分析

    1.1 Steam平台的简单介绍 你选择的产品是? 如题,这次的作业我选择了Steam作为分析的对象. 为什么选择该产品作为分析? 我选择数字游戏贩售平台STEAM作为分析对象的原因有以下几点: 1. ...

  3. 2017-2018-2 《网络对抗技术》 20155302 第二周 Exp1 PC平台逆向破解(5)M

    2017-2018-2 <网络对抗技术> 20155302 第二周 Exp1 PC平台逆向破解(5)M 1-实践目标 1.1-实践介绍 本次实践的对象是一个名为pwn1的linux可执行文 ...

  4. PC平台逆向破解实验报告

    PC平台逆向破解实验报告 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含另 ...

  5. 20165223《网络对抗技术》Exp1 PC平台逆向破解

    目录--PC平台逆向破解 1 逆向及BOF基础实践说明 1.1 实践内容 1.2 实践要求 1.3 基础知识 2 实验步骤 2.1 直接修改程序机器指令,改变程序执行流程 2.2 通过构造输入参数,造 ...

  6. 20155324《网络对抗》Exp1 PC平台逆向破解(5)M

    20155324<网络对抗>Exp1 PC平台逆向破解(5)M 实验目标 本次实践的对象是一个名为~pwn1~的~linux~可执行文件. 该程序正常执行流程是:~main~调用~foo~ ...

  7. 2018-2019-2 20165237《网络攻防技术》Exp1 PC平台逆向破解

    2018-2019-2 20165237<网络攻防技术>Exp1 PC平台逆向破解 一.实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调 ...

  8. 2018-2019-2 20165234 《网络对抗技术》 Exp1 PC平台逆向破解

    实验一 PC平台逆向破解 实验目的 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含另 ...

  9. 20165221 《网络对抗技术》EXP1 PC平台逆向破解

    20165221 <网络对抗技术>EXP1 PC平台逆向破解 一.实验内容 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函 ...

随机推荐

  1. 编译putty 源码去掉 Are you sure you want to close this session? 提示

    0, 为什么要编译 putty ?在关闭窗口的时候,会弹出一个 Are you sure you want to close this session?要把这个去掉.当然也可以用 OD 之类的来修改. ...

  2. Django中ORM中的get与filter区别

    本文出自 “orangleliu笔记本” 博客,出处http://blog.csdn.net/orangleliu/article/details/38597593 Django的orm中get和fi ...

  3. Vue2.0 【第二季】第5节 Template制作模板

    目录 Vue2.0 [第二季]第5节 Template制作模板 第5节 Template制作模板 一.直接写在选项里的模板 二.写在template标签里的模板 三.写在script标签里的模板 Vu ...

  4. js 碰撞+拖拽

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. liunx 安装 zookeeper(转)

    转自:https://www.cnblogs.com/expiator/p/9853378.html linux安装zookeeper及使用 一.安装条件 想要安装zookeeper,必须先在linu ...

  6. Flask wtforms 表单验证使用

    目录 wtforms 使用1(简单版): 使用2(复杂版): wtforms 安装:pip3 install wtforms 使用1(简单版): from flask import Flask, re ...

  7. nmon使用问题汇总(不定期更新)

    nmon使用问题汇总 1.nmon常用命令: ./nmon -s1 -c300 -f -m /root/nmon-test-result/项目-50并发/ 2.设置nmon参数为-s1 -c720,发 ...

  8. 1. chromedriver的下载和配置

    使用selenium时,需要用到不同浏览器的driver. 我常用chromedriver,所以先记录chromedriver的使用和配置.其他浏览器的driver配置大同小异. 一. 确定浏览器的版 ...

  9. Shell:sed用法 - 查找并替换字符串

    原文链接 语法 sed 's/serach_str/replace_str/g' file_path 在某个文件中查找所有的serach_str并替换为replace_str 参数 描述 serach ...

  10. zookeeper基础学习-简介

    1.zookeeper的使命 zookeeper可以在分布式系统的协作多个任务(一个任务是指一个包含多个进程的任务),这个任务可以是为了协作或者是为了管理竞争. 协作:多个进程需要一同处理某些事情,一 ...