公司某项目前端技术积累

最佳实践

BootStrap + jquery + jquery插件 + sea.js/require.js + Grunt

前期技术选型

  1. BootStrap + Backbone.js + require.js + jquery插件
  2. ExtJS
  3. Angular.js
  4. BootStrap + jquery + jquery插件

前端技术选型总结:

  1. 之所以选择 BootStrap + jquery + jquery插件 的原因是因为ExtJS或Angular.js这种大而全的MVC框架,学习成本较大,之前没有项目经验;
  2. 弃用require.js或sea.js(模块化工具)以及Grunt(自动化构建工具)的原因是接手项目时已经是二手项目,并且rails有js模块化工具和自动化构建工具

但如果后台web框架不提供模块化工具和自动化构建工具,就非常有必要使用类似于sea.js、require.js这样的模块化工具以及Grunt这样的自动化构建工具

前端技术图示

备注:有些技术未用到

前端插件使用心得

图表

  • Echarts

    1. 综合评分:5星
    2. 易用性:4星
    3. 收费:否
    4. 使用心得:百度良心打造canvas图表库,能基本满足所有线上图表需求,示例多、主题丰富、线下询问方便,但有一些bug(不影响正常使用)
  • d3.js

    1. 综合评分:4星
    2. 易用性:3星
    3. 收费:否
    4. 使用心得:开源SVG图表库,在图表较为复杂时,可以使用d3来绘制,示例多,但易用性较差,本项目中未使用
  • HighCharts

    1. 综合评分:4星
    2. 易用性:4星
    3. 收费:是
    4. 使用心得:收费高,易用性高、未发现bug,图表丰富,本项目中未使用

表格控件

  • DateTables

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:功能强大,有BootStrap风格样式,本项目中未使用
  • st-grid3.0

    1. 综合评分:4星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:公司内部组件,可扩展性高,灵活性大,但有些功能尚不完善,可自行扩展

时间控件

  • jquery datepicker

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:可用于单天日期选择,API完善,能满足大部分需求,建议自行从该插件扩展功能,同时有BootStrap风格的皮肤,本项目中未使用
  • FullCalendar

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:可用于日程安排,API完善,易用性高
  • DateRangePicker

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:双日历时间控件,当然jquery datepicker也可以控制显示多个日历表,但本控件封装的较为完善,满足了较为复杂的需求

多选日历

  • KitJS多选日历

    1. 综合评分:3星
    2. 易用性:3星
    3. 收费:否
    4. 使用心得:在论坛中找到,感觉像是为了完成示例一样的插件,现在作者不再维护,可扩展性差,在本项目中为完成需求曾多次修改其源码
  • jquery Kalendae

    1. 综合评分:未知
    2. 易用性:未知
    3. 收费:否
    4. 使用心得:将此插件找到后未使用,由于其为jquery插件,可扩展性会比上款多选日历的插件要好些(当然也只是感觉),本项目中未使用

下拉菜单

  • select2

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:可用于单选或多选,可根据关键字搜索,易用性高,API完善

对话框

  • st-pop

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:公司内部对话框组件,灵活性高,可扩展性强,但样式方面可能需要使用者自行修改符合系统的风格
  • magnific-popup

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:暗箱对话框,可用于展示图片、视频等,样式好看

树形控件

  • zTree

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:API完善,易用性高,但一次性生成多个节点速度会比较慢,这也是生成大数据量的DOM节点时的弊病,本项目中未用到

及时编辑控件

  • Jeditable

    1. 综合评分:4星
    2. 易用性:4星
    3. 收费:否
    4. 使用心得:样式简洁,可所见即所得的编辑文字,可自行扩展样式
  • Editable for BootStrap

    1. 综合评分:4星
    2. 易用性:4星
    3. 收费:否
    4. 使用心得:并非所见即所得的编辑文字,是有简单的小弹窗,个人感觉较为突兀,但其样式较为优美,功能丰富(可填写文字或下拉列表等)

css前端框架

  • BootStrap3.0

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:css框架,样式丰富,同时有一些非常好用的js插件

      同时推荐一些css框架:扁平化风格的 Flat UI (公司已购买),微软Metro风格的 Metro
      UI
       ,以及Google风格的 Google BootStrap

项目构建工具

  • Grunt

    1. 综合评分:5星
    2. 易用性:4星
    3. 收费:否
    4. 使用心得:自动化构建工具,可一键式压缩(minification)、编译、单元测试、linting,结束您反复的构建工作。

模块化

  • sea.js
  • require.js
    1. 综合评分:都是5星
    2. 易用性:都是5星
    3. 收费:否
    4. 使用心得:两个模块化工具,是两种不同的规范,sea.js是CMD规范,require.js是AMD规范,在本项目中未使用

js MVC 框架

  • Backbone.js

    1. 综合评分:4星
    2. 易用性:4星
    3. 收费:否
    4. 使用心得:学习方便,源码仅有2000多行(带注释),非常适用于移动版,个人感觉,Backbone虽然没有其他MVC框架那么强大,但是也因此更加灵活,个人感觉可以当做多人协作的代码规范工具,在项目中未使用
  • Angular.js

    1. 综合评分:未知
    2. 易用性:未知
    3. 收费:否
    4. 使用心得:在项目中只是用到其上传文件的组件,Angular是Google开源的一个MVC框架,功能非常强大,但是报错不是特别明显,调试bug比较麻烦
  • ExtJS

    1. 综合评分:3星
    2. 易用性:3星
    3. 收费:是
    4. 使用心得:非常符合企业级的内部管理系统,高强度定制化,学习成本高,维护成本高,调试bug比较麻烦,学习教程

js库

  • jquery

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:非常好用乃至接近完美的js DOM 库,jquery UI更是非常方便且易扩展,并且jquery UI 现在有BootStrap风格的皮肤

图标字体

  • Font Awesome

    1. 综合评分:5星
    2. 易用性:5星
    3. 收费:否
    4. 使用心得:常用的图标

上传控件

  • jquery FileUpload

    1. 综合评分:5星
    2. 易用性:4星
    3. 收费:否
    4. 使用心得:配合HTML模板比较简单易用,但是在本项目中整合到rails中就不是很好用,但仍不失为一款非常好用的拖拽上传软件,支持查看上传进度
  • 百度WebUploader

    1. 综合评分:未知
    2. 易用性:未知
    3. 收费:否
    4. 使用心得:百度FEX刚刚出的一款HTML+Flash上传插件,功能较为强大,但未在真实项目中使用,不知其性能和易用性如何

视频播放插件

  • jwplayer

    1. 综合评分:4星
    2. 易用性:4星
    3. 收费:否(但去LOGO,需要收费)
    4. 使用心得:由于HTML5不支持在线播放Flash格式视频,所以需要外在插件,jwplayer的确是不错的选择,但在本项目中也是自己进行破解其插件才打到需要的效果

公司某项目前端技术积累

时间: 2024-08-15 04:17:13

公司某项目前端技术积累的相关文章

网站前端技术积累

http://www.cnblogs.com/jimchxi/archive/2009/03/11/1408483.html http://stackoverflow.com/questions/9701219/how-do-i-parse-json-result-using-jquery http://stackoverflow.com/questions/4935632/parse-json-in-javascript

从大公司到创业公司,技术人转型怎样转变思路与处事之道?

原文:http://www.sohu.com/a/145103225_114778 本文作者将从自己的工作经历出发,从工程师择业的角度,与观众产生共鸣,从大公司到创业公司,需要转变的思路与做事情的方法,有原则性的东西,也有真实案例与身边的故事,还会穿插一些工程师的软技能. 写在前面 不想当将军的士兵不是好士兵,不想做 CTO 的技术人不是好技术人 刚拿到这个话题的时候,提笔不知道要写什么.大约三个月之前,有记者对我做过一个专访,之后在官网首页发布了一篇文章<从知名外企到创业公司做 CTO,是种怎

解密国内BAT等大厂前端技术体系-百度篇(长文建议收藏)

1 引言 整个业界在前端框架不断迭代中,也寻找到了许多突破方向,例如跨平台中的RN.Flutter,服务端GraphQL.Serverless,前端和客户端的融合越来越紧密,前端在Node和Electron的加持下,也扩展了自己的版图到服务端和桌面. 同时,随着前端开发越来越复杂,整个前端研发也经历了人工化->工具化->工程化->智能化的演变.目前各个大厂在工程化实践不断迭代,出现了许多Low/No Code等前端智能化解决方案,工程化实践也深入到研发的各个环节,不断提升前端研发的标准化

前端技术的发展和趋势

Web 发展了几十个春秋,风起云涌,千变万化.我很庆幸自己没有完整地经历过这些年头,而是站在前人的肩膀上行走.Web 技术发展的速度让人感觉那几乎不是继承式的迭代,而是一次又一次的变革,一次又一次的创造.这几年的前端,更为之甚! 我从 12 年底开始接触前端,12 年之前的前端发展情况只能从上一辈的笔触中领会.本文会盘点从 09 年开始到 15 年间前端技术的革新,同时也会从多个角度,解读近几年前端技术发展的潜在因素,其中穿插了若干对前端演进的拙见,难免会有错误和疏漏,望读者可以补充和斧正. 那

webapp项目前端总结

提纲 整体把握,从设计稿入手——技术选型 并行开发,从实现静态页面开始 前端自动化 前端js逻辑 前后端集成 小问题集合 总结 1.整体把握,从设计稿入手 —— 技术选型 新项目到手,算是运气好,设计稿都已经全部完成了,40多个页面.不用担心边做边改的情况.能够提前确定重用性和一些规范. 项目主要要求: 1. 兼容PC.微信.移动端,兼容现代浏览器,IE9+等 1. 嵌入到安卓.ios客户端和微信,要求页面独立 1. 使用node.js作为中间件 我负责前端页面和逻辑,node是另一个同事负责,

2016 年前端技术

近几年前端技术盘点以及 2016 年技术发展方向 2016-01-09 10:33 by Barret Lee, 1175 阅读, 8 评论, 收藏, 编辑 Web 发展了几十个春秋,风起云涌,千变万化.我很庆幸自己没有完整地经历过这些年头,而是站在前人的肩膀上行走.Web 技术发展的速度让人感觉那几乎不是继承式的迭代,而是一次又一次的变革,一次又一次的创造.这几年的前端,更为之甚! 我从 12 年底开始接触前端,12 年之前的前端发展情况只能从上一辈的笔触中领会.本文会盘点从 09 年开始到

结合当前公司发展情况,技术团队情况,设计一个适合的技术团队绩效考核机制

结合当前公司发展情况,技术团队情况,设计一个适合的技术团队绩效考核机制 一.引言 要想制定绩效考核机制首先要先知道绩效考核的定义是什么,绩效考核指企业在既定的战略目标下,运用特定的标准和指标,对员工的工作行为及取得的工作业绩进行评估,并运用评估的结果对员工将来的工作行为和工作业绩产生正面引导的过程和方法. 绩效考核(performance evaluation),是企业绩效管理中的一个环节,常见绩效考核方法包括bsc.kpi及360度考核等.绩效考核是一项系统工程.绩效考核是绩效管理过程中的一种

前端技术概括

文/李晶 随着互联网产业的爆炸式增长,与之伴生的Web前端技术也在历经洗礼和蜕变.尤其是近几年随着移动终端的发展,越来越多的人开始投身或转行至新领域,这更为当今的IT产业注入了新的活力.尽管Web前端技术诞生至今时日并不长,但随着Web技术的逐渐深入,今后将会在以下几方面发力. Web移动终端开发. JavaScript的兄弟们. 百花齐放的类库和框架. 工程化的Web前端开发规范. Web移动终端开发 PhoneGap: 一个开源的开发框架,使用HTML.CSS和JavaScript来构建跨平

SLAM前端技术选择思考

以前是专门做室内定位技术研究的,先后学习和分析了多种基于电磁的室内定位技术,如WiFi指纹定位(先后出现过RSSI.CTF.CIR多种指纹特征).WiFi ToF定位.低功耗蓝牙BLE以及iBeacon定位,调研和测试过超宽带(UWB)定位技术.地磁指纹定位等技术.后面有时间会准备一个适用场景和性能指标的详细对比分析. 室内定位技术通常以定位区域的精准结构及地图已知为前提,随着机器人相关技术的发展和应用场景的逐步拓展,同步定位与地图构建SLAM技术日益重要,近两个月学习和测试了下SLAM相关的技