TinyAdmin前端展现框架
悠悠然然 发表于2年前
TinyAdmin前端展现框架
  • 发表于 2年前
  • 阅读 10273
  • 收藏 228
  • 点赞 21
  • 评论 77

开程序员的淘宝店!寻找开源技术服务伙伴!>>> »  

一直在苦苦寻找一个合适的前端框架,少说也看了几十个。
  1. ext太重,而且有内存泄露,在IE下就是个悲剧。
  2. dhtmlx,速度比较好,开源是GPL不适合企业应用,商业的要钱,倒也不贵万把块钱,但是样式比较接近于传统管理台应用,另外一个弊端是比较小众
  3. Dojo,其实架构比较好,但是比较小众
  4. Semantic:非常好的一个框架,但是成熟度不太好,对IE支持尤其比较差,另外比较小众
  5. easyui:相对来说,也是一个不错的框架了,但是样式有点接近ext,也存在内存泄露
  6. wijmo:非常完善的前端框架,但是比较小众,对IE8兼容方面有些问题
  7. kendoui:也是非常不错的前端框架,比较小众,后台应用开发包要收费
  8. jqueryui:非常不错的前端框架,应用面够广,但是组件相对少一些
  9. JQuery:本身只是个基础库,当然有许多的插件,但是不同插件之间的样式啥的不太一致,自己去整合费效比较差
  10. Bootstrap,不错的框架,组件相当来说少一点
  11. ......还有许多知名不知名的前端框架,但是比较可用的,真的很难找
其实我的要求也不是太高,只要满足下面的就差不多了:
  1. 组件丰富些,自己不添加也足够用
  2. 兼容性好一点,最好IE8以上都能兼容的
  3. 修改容易点,我想要就要,不想要就不要
  4. 扩展方便点,我想增加就能增加,我想修改就能修改
  5. 性能能好点,即使在老旧如IE8,操作系统为XP的环境也,可以跑出不错的速度来。
  6. 内存回收能回一点,内存出现泄露,也可以但是可以简单一个刷新就比较彻底的回收掉,也是可以接受的。
  7. 界面好看点,让人最好能眼前一亮,再看,更亮的效果。
  8. 最好是免费的,如果不免费,费用要尽量低的,最好3、5$可以搞定,再不行几十$也可以接受
  9. 最好能支持更换皮肤啥的
  10. 最好能支持窗口小组件,可以由客户进行位置调整啥的
  11. 最好支持流式布局
也看了许多基于bootstrap做出来的,说实际的有一些还是不错的,但是总觉得有这样那样的遗憾或不足,直到有一天看到smartadmin,哇,眼睛一亮,这不就是我想要的么?赶紧去看,越看越喜欢,就是它了。
仔细研究下来,发现他与我要求的匹配度比较接近,但是还是有一些不足在的:
  1. JS及CSS文件众多,稍有不慎就会出现错误,从而导致无法展示
  2. 对于IE8兼容性不太好,在IE8下无法使用
  3. 对皮肤啥的修改过之后,不能保存,下次进来的时候,还要重新设过
  4. 全是E文的,用起来上手慢一点
呵呵,想要一个100%满足要求的太难了,这个已经满足95%以上了,有不满足的自己动手丰衣足食吧。
  • 对于问题1:进行组件化,对这些CSS,JS文件进行分别治理,这个工作量非常大,而且要胆大心细,这里消耗N多脑细胞,终于搞定了。
  • 对于问题2:主要是CSS及JS兼容性相关的问题,这个已经超出本人能力范围,没得办法,找一外援搞定之。
  • 对于问题3:这个相对于上面两个问题SoEasy,轻松搞定了。2014/11/1 发表博文 - 悠悠然然的个人页面 - 开源中国社区
  • 对于问题4:汉化之,更方便国人使用
在对其进行重构及完善过程中,还修复了一些BUG。

现在使用起来就方便多了,不必引入js和css及图像文件,字体文件等等,直接进行Pom依赖即可,结合到Tiny框架中,还提供了更容易使用的宏,提供了样式文件合并压缩,JS文件压缩合并,做前端的小朋友们的好日子来了。

1.UI组件包抽取

org.tinygroup.calendar
org.tinygroup.jquery
org.tinygroup.bootstrap
org.tinygroup.bootstrapWizard
org.tinygroup.ckeditor
org.tinygroup.colorhelpers
org.tinygroup.colorpicker
org.tinygroup.component
org.tinygroup.datatables
org.tinygroup.delete-table-row
org.tinygroup.dropzone
org.tinygroup.easyPieChart
org.tinygroup.excanvas
org.tinygroup.fastclick
org.tinygroup.flot
org.tinygroup.FontAwesome
org.tinygroup.fueluxwizard
org.tinygroup.fullcalendar
org.tinygroup.ie-placeholder
org.tinygroup.ion-slider
org.tinygroup.jquery-form
org.tinygroup.jquery-nestable
org.tinygroup.jquery-touch
org.tinygroup.jstorage
org.tinygroup.js-migrate
org.tinygroup.knob
org.tinygroup.markdown
org.tinygroup.maskedInput
org.tinygroup.maxlength
org.tinygroup.morris
org.tinygroup.msieFix
org.tinygroup.multiselect
org.tinygroup.notification
org.tinygroup.noUiSlider
org.tinygroup.pace
org.tinygroup.prettify
org.tinygroup.raphael
org.tinygroup.select2
org.tinygroup.selectToUISlider
org.tinygroup.smartadmin-new
org.tinygroup.smartwidgets
org.tinygroup.sparkline
org.tinygroup.summernote
org.tinygroup.superbox
org.tinygroup.throttle-denounce
org.tinygroup.typeahead
org.tinygroup.vectormap
org.tinygroup.x-editable
org.tinygroup.jqueryvalidate
org.tinygroup.smartadmin
org.tinygroup.jqgrid
org.tinygroup.jqueryform
org.tinygroup.jquerystorage
SmartAdmin用到的Jquery插件真多。

2.UI组件宏封装

#macro(jui_hrefButton $id $caption $construct) 
<a id="$id" href="#">$caption</a>
<script>
$(function() {
    $( "#$id").button($!construct);
});
</script>
#end

#macro(jui_radio $id $groupId $caption)
<input type="radio" id="$id" name="$groupId" /><label for="$id">$caption</label>
#end
通过封装类似上面的宏,对于界面的编写就更容易了,要会的内容就更少了。

3.界面编写

#@juiTab("tabs")
 #@juiTabHeader()
 #@juiTabHeaderItem("tabs-a")标签1#end
 #@juiTabHeaderItem("tabs-b")标签2#end
 #@juiTabHeaderItem("tabs-c")标签3#end
 #end
 
 #@juiTabContentItem("tabs-a")
 <p>此前,李克强和梅德韦杰夫共同主持了中俄总理第十九次定期会晤。会晤后,两国总理签署联合公报,并见证经贸、投资、能源、金融等领域近40项重要文件的签署。</p>
 #end
 
 #@juiTabContentItem("tabs-b")
 <p>李克强是在和俄罗斯总理梅德韦杰夫共同会见记者时提到“套娃”的。这是一种俄罗斯特产的木制玩具,由多个一样图案的空心木娃娃一个套一个组成,最多可达十多个。</p>
 #end
 
 #@juiTabContentItem("tabs-c")
 <p>中国总理回忆起在农村生活的经历。“我年轻时在中国农村生活多年,亲身经历过吃不饱饭的艰难岁月。”李克强说,吃一顿饱饭可能很快就会忘记,但饥饿留下的印象永生难忘。</p>
 #end
#end
现在可以通过模板语言来写界面了,哦也

写出来的效果是怎么样的呢?

4.图片展示

5.资源压缩及合并情况

从上面可以看到,CSS文件已经被完全合并为一个,而JS,则除了应用相关的一个之外,也全部被压缩为1个,实际使用体验,采用Tiny框架的加载效率及整体使用流畅度比原生的要好不少。

5.实际试用

再多的图也没有实际体验来得更有切身感受,喜欢的请猛点下面的链接

http://www.tinygroup.org/tinyadmin/

也可以访问 www.tinygroup.org获取更多内容。


共有 人打赏支持
悠悠然然
粉丝 2083
博文 165
码字总数 330163
作品 13
评论 (77)
肥皂
Nice work
买红薯
good job
黄勇
well done!
小99
liubaoxiong
出差回来研究下
lgscofield
你用到的smartadmin还没有sbadmin(链接:http://ironsummitmedia.github.io/startbootstrap-sb-admin-2/)好用,默认支持IE8,目前我做的一个项目就是使用这个后台admin模板,跟你的做法差不多相似,也是写个宏,然后让大家调用。。。
悠悠然然

引用来自“lgscofield”的评论

你用到的smartadmin还没有sbadmin(链接:http://ironsummitmedia.github.io/startbootstrap-sb-admin-2/)好用,默认支持IE8,目前我做的一个项目就是使用这个后台admin模板,跟你的做法差不多相似,也是写个宏,然后让大家调用。。。
嗯嗯,这个东东一个人一道眼,你说的那个我也看到过,相对来说,功能及集成的组件还是smartadmin好一个层次,尤其是它的小部件,太NB了。你仔细对比一下看看?
悠悠然然

引用来自“肥皂”的评论

Nice work
3Q
悠悠然然

引用来自“买红薯”的评论

good job
3Q
悠悠然然

引用来自“黄勇”的评论

well done!
3Q
悠悠然然

引用来自“小99”的评论

3Q
悠悠然然

引用来自“liubaoxiong”的评论

出差回来研究下
非常欢迎~
lgscofield

引用来自“lgscofield”的评论

你用到的smartadmin还没有sbadmin(链接:http://ironsummitmedia.github.io/startbootstrap-sb-admin-2/)好用,默认支持IE8,目前我做的一个项目就是使用这个后台admin模板,跟你的做法差不多相似,也是写个宏,然后让大家调用。。。

引用来自“悠悠然然”的评论

嗯嗯,这个东东一个人一道眼,你说的那个我也看到过,相对来说,功能及集成的组件还是smartadmin好一个层次,尤其是它的小部件,太NB了。你仔细对比一下看看?
其实在此之前我也找了很多flat admin模板,大大小小不下100个,有时候做一个兼容性很强的东西,真的比较困难,你的例子我刚在IE下跑了下,好像IE8不那个切换颜色和流式布局和左边目录fixed不起作用。。。
妈她亲我
这是开源的么?
悠悠然然

引用来自“lgscofield”的评论

你用到的smartadmin还没有sbadmin(链接:http://ironsummitmedia.github.io/startbootstrap-sb-admin-2/)好用,默认支持IE8,目前我做的一个项目就是使用这个后台admin模板,跟你的做法差不多相似,也是写个宏,然后让大家调用。。。

引用来自“悠悠然然”的评论

嗯嗯,这个东东一个人一道眼,你说的那个我也看到过,相对来说,功能及集成的组件还是smartadmin好一个层次,尤其是它的小部件,太NB了。你仔细对比一下看看?

引用来自“lgscofield”的评论

其实在此之前我也找了很多flat admin模板,大大小小不下100个,有时候做一个兼容性很强的东西,真的比较困难,你的例子我刚在IE下跑了下,好像IE8不那个切换颜色和流式布局和左边目录fixed不起作用。。。
谢谢,正在还是在测试中,谢谢提醒。
悠悠然然

引用来自“妈她亲我”的评论

这是开源的么?
我需要研究一下算不算侵权,现在我也说不好,Tiny框架本身是开源的。
HulkZ
哇,上头条了4
Tom-Lin
好像有点大,1.1m的js文件
一米四
ace admin支持ie8
悠悠然然

引用来自“Tom-Lin”的评论

好像有点大,1.1m的js文件
Demo里所有插件都用上了,因此比较大,实际使用当中,用多少打多少,而且还是全自动的,开发人员不用参与的
×
悠悠然然
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: