为什么呢,一个前端用的,类似EXCEL的操作的JS 插件,从头研发真的有必要吗?可能你会觉得没有必要吧,其实我自己也问过自己好多遍。因为业界有更加强大的spreadjs,也有比较轻型的JEXCEL,自己再弄一个,不是重复造轮子妈?这不是我们这行天天在讲的,要一定避免的事吗?可最终我还是觉得还是有必要的。

其实有这个想法也很久了,主要自己工作中需要用到这块。目前的企业用户,在电脑端的操作,或多或少都离不开EXCEL的操作,他们在做一些信息化的项目时,经常会希望保留一些在EXCEL里的操作习惯。我们经常给用户的答复是,不行,做不到。其实回头想一想,用户追求更熟悉、更方便的用户体验,希望能像EXCEL一样,复制粘贴,设置公式,用键盘快捷操作,他们有错吗?为什么我们不能满足他们呢?是因为代价大、开发成本高吗?还是我们就不想做这个事,亦或是觉得没有必要做。虽然用户也能接受别的方案,但我不禁要问一下勉强接受你的用户,他们爽吗?

我觉得他们肯定不爽,换成你,你也会不爽的。于是我在网上到处找成熟的方案,期间遇到了spreadjs ,jexcel, handsontable 等前端的插件,都做的不错,也曾试图将他们引入到项目中,但最后还是放弃了,这里我说一下自己的观点,一家之言,仅供参考,大家勿喷。

产品

优势

劣势

Spreadjs

1、这方面的老大,功能强大

2、国内也有专门的队伍运营

3、文档样例齐全

1、功能有些重,有时只要1个很小的功能

2、价格有点贵…

jexcel

1、 好像是免费的

2、 比较适合列表式操作

1、 不收费,好像缺少专人维护

2、 功能少,能满足需求少。

handsontable

1、 分免费版和收费版

2、 免费版具备基础功能

3、 比较适合列表式操作。

1、 国内缺少专门队伍运营

2、 想要的功能,都在收费版里,且价格不算便宜。

3、缺少中文版的文档资料,入门难。

正是基于自己的使用需求和自己选型的痛苦经历,纠结了一段时间,终于下定决心,研发智表ZCELL,做一款让大家都用的起且让最终用户觉得爽的插件。

时间回到2018年元旦左右,开始做基本的技术规划和选型,鉴于刚刚起步,选择了当下流行的jquery做基础,用了两个月的时间,出了V1.0,当然,第一版功能相当简陋,只有最基础的选定单元格和选定单元格计算、复制粘贴功能,甚至都算不上一个插件。

发版后,收到了部分网友的反馈,于是继续完善,根据实际需要增加了合并单元格等基本功能,发布了V1.1版本。根据网友要求,继续增加快捷键操作、设置计算公式、设置单元格类型、双击编辑等核心功能逐步完成,发布了V1.3版本。时至今日,ZCELL后续又发布了V1.3.1版,V1.3.2版,功能正在不断的完善,目前已经具备投产的必要功能,不敢说和以上3款产品相比,但基本的功能已经具备了,产品更新基本保持1个月左右1个版本,小版本可能更短。

产品的收费,是为了支撑产品的不断研发,也是为了验证产品的价值,没有人愿意付费的产品,我认为是没有价值的。ZCELL根据不同版本功能,设置不同的价格,目前功能版本只需要几百元,对我们来说可能只是一次餐费,却能带给用户不一样的体验,如果你有兴趣,欢迎尝试(可以自行百度)。

我希望大家能够得到大家的支持,才能让智表走的更远,让用户用的更爽。

我为什么要花大力气从头研发智表ZCELL(一个仿EXCEL的前端插件)的更多相关文章

  1. 《微信小程序七日谈》- 第五天:你可能要在登录功能上花费大力气

    <微信小程序七日谈>系列文章: 第一天:人生若只如初见: 第二天:你可能要抛弃原来的响应式开发思维: 第三天:玩转Page组件的生命周期: 第四天:页面路径最多五层?导航可以这么玩: 第五 ...

  2. 知道创宇研发技能表v3.1

    by @知道创宇(www.knownsec.com) @余弦 & 404团队 后续动态请关注微信公众号:Lazy-Thought 说明 关于知道创宇 知行合一 | 守正出奇 知道创宇是一家黑客 ...

  3. 知道创宇研发技能表v3.0

    知道创宇研发技能表v3.0 2015/8/21 发布 by @知道创宇(www.knownsec.com) @余弦 & 404团队 后续动态请关注微信公众号:Lazy-Thought 说明 关 ...

  4. 知道创宇研发技能表v2.2

    知道创宇研发技能表v2.2 2014/3/9 发布 by @知道创宇(www.knownsec.com) @余弦 & 行之 知道创宇是国内Geek十足且普遍被认为特别有前途的互联网安全公司, ...

  5. 【转】知道创宇研发技能表v2.1

    转自:http://blog.knownsec.com/Knownsec_RD_Checklist/v2.1.html# 知道创宇研发技能表v2.1 创建时间:2012/12/1 2013/4/26 ...

  6. 知道创宇研发技能表v2.1

    创建时间:2012/12/1 2013/4/26 公开发布 2013/7/15 新增:牛人1,2,3 2013/7/20 优化:成长,增加:小事心态.任务拆分.方法论 2013/8/12 更新:Web ...

  7. 推荐一款超强大的基于Angularjs的自动完成(Autocomplete)标签及标签组插件–ngTagsInput

    前言 今天利用中午午休时间,给大家分享推荐一款基于Angularjs的自动完成(Autocomplete)标签及标签组插件--ngTagsInput,功能超强大的.不信,你试试就知道^_^... Au ...

  8. SWAP_JOIN_INPUTS Oracle Hint(处理hash join强制大表(segment_size大)作为被驱动表)

    SWAP_JOIN_INPUTS Oracle Hint(处理hash join强制大表(segment_size大)作为被驱动表) swap_join_inputs是针对哈希连接的hint,它的含义 ...

  9. Expo大作战(四)--快速用expo构建一个app,expo中的关键术语

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

随机推荐

  1. Mysql 字符串分隔函数

    /*** 字符串分隔方法* 获取字符串分隔之后的数组长度*/DROP FUNCTION IF EXISTS `func_get_split_total`;DELIMITER ;;CREATE FUNC ...

  2. June 29th. 2018, Week 26th. Friday

    Real love is always worth waiting for. 真爱永远值得等待. From Westworld. Real love is rare, but it does exis ...

  3. docker的简单使用

    1.下载centos镜像 docker pull centos 2.查看本地所有镜像 docker images 3.后台运行docker docker run -t -i -d centos /bi ...

  4. javascript权威指南笔记[6-8]

    1.三类对象,两类属性 2.原型链只有在查询的时候才会体现 3.对象属性访问 4.属性赋值 5.delete只是断开属性和宿主对象的关系,不会去操作属性中的属性 6.Object.ke() var m ...

  5. Java实现点击导出excel页面遮罩屏蔽,下载完成后解除遮罩

    一.问题场景 最近在做数据统计功能,需求是导出大数据量的excel,时间间隔较长,大概需要十秒左右,点击导出后,页面没有做任何处理,用户也不知道是否正在导出:如果没有做交互上的限制,用户可以一直点击导 ...

  6. 难以理解的AQS(上)

    在一篇博客中,我们看了下CopyOnWriteArrayList的源码,不是很难,里面用到了一个可重入的排他锁: ReentrantLock,这东西看上去和Synchronized差不多,但是和Syn ...

  7. Mybatis+mysql批量插入性能分析测试

    前言 今天在网上看到一篇文章(后文中的文章指的就是它) https://www.jianshu.com/p/cce617be9f9e 发现了一种有关于mybatis批量插入的新方法,而且看了文章发现我 ...

  8. idea avtiviti 插件中文乱码

    idea 安转activiti插件后,编辑流程图发现保存后中文乱码,并且idea的字符集(Settings—>Editor—>File Encodings)已经设置为UTF-8,流程图中中 ...

  9. .NetCore WebAPI采坑之路(持续更新)

    1.WebAPI新增日志过滤器or中间件后Action读取到的请求Body为空问题 案例: 自定义了一个中间件,用于记录每次访问webapi的入参,以及引用了Swagger. 先看下面这段代码: pu ...

  10. Linux journalctl命令

    在Systemd出现之前,Linux系统及各应用的日志都是分别管理的,Systemd开始统一管理了所有Unit的启动日志,这样带来的好处就是可以只用一个 journalctl命令,查看所有内核和应用的 ...