weixin_39815600
weixin_39815600
2021-01-12 19:14

JSSDK能否提供一套完整的demo开发模板?

经过两周时间连续攻关边学边做边问,项目总算完成了,先感谢一下amis团队提供这么好用的前端工具,并且耐心提供帮助解答每一个细节问题,辛苦了~

然后总结、吐槽一下在开发过程中遇到的一些问题,希望后续能够改进优化:

1、jssdk版能否像amis-admin那样提供一套完整的starter开发模板(包括菜单部分)?这个是在开发过程中踩到的第一个坑,搭建项目框架也是花费时间最长的。因为不会React(特别是那些路由配置)所以选择了jssdk,但是这个jssdk真的只是一个sdk,没有菜单、没有模板框架,只能自己搞,一开始选择了AdminLTE框架,但是这个框架也用到了bootstrap样式,如果用DIV+CSS的形式把amis嵌入在DIV里,会导致部分样式有冲突(也看了一下其他框架,大部分都是基于bootstrap的,都和amis有冲突),显示出来很奇怪;所以后来选择了iframe模式,单独搞了一个html把amis嵌入在iframe里,但这样也遇到很多坑,比如iframe的高度、滚动条设置等(本来就是不懂前端才选择用amis的)以及iframe和外层框架的cookie/session同步问题…… 查了很多资料调试了很久才勉强解决,到现在仍然不够完美。所以强烈希望jssdk可以提供一套完整的DIV+CSS的开发模板给starter.

2、部分配置不够灵活。虽然提供了很多好用的控件,但有时还是不够用,比如CURD/Table只有固定Table、Card、List几种模式,如果想绘制像简历表格那样的一行多列的item不太好使。各种控件最好都能提供HTML接口,也就是json/html混合配置,默认用json配置,json不够用的时候可以用html自定义渲染。

3、Table控件长宽固定无法自由伸缩、顺序不能拖拽调整。建议后续参考easyui优化一下。

4、主题单一,有点苍白,特别是。建议可以参考AdminLTE那样,把主题样式单独剥离出来一个theme.css,通过切换不同的theme.css实现不同的主题。

5、文档,还是文档。很多强大的配置参数在文档中都没写出来,得自己上来问。

暂时先这么多把,希望amis越来越优秀~~ 真的效率太高了!!!!!后面再优化完善一下,绝对比antd、elementui好多了~~非常看好这个开源项目,给点32个赞~

该提问来源于开源项目:baidu/amis

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

12条回答

  • weixin_39815600 weixin_39815600 3月前

    有没有考虑整个Vue版的?Vue还能看懂一些,React实在没精力整了…… Ant Design、ElementUI、WeUI框架都提供了React、Vue双版本,B家的不能比他们差吧?

    点赞 评论 复制链接分享
  • weixin_39574868 weixin_39574868 3月前
    • 其实你看看amis源码的话就知道,相当庞大的代码量,一个 Table 组件就几千行逻辑代码
    • amis一方面要添加诸多的新功能,另一方面也要维护老版本的稳定。Amis 好用 和相当长时间的开发与维护是分不开的
    • 另外翻译成vue版本,开发和维护成本可以说是成倍增加,然而对于JSON渲染的使用层面来说用户丝毫感觉不到与react的区别
    • 从那个方面来说做这件事的性价比是极低的,不过你可以自己思考下怎么用vue把react版本的重新翻译一下

    话说回来,和将 React 代码翻译 Vue 版本来比起来,Amis 社区完善(Amis论坛,更多开发者PR)和文档完整,组件和渲染分离,一些依赖库的升级 等等一系列才是更重要的。

    Amis 确实是一个很有远见的项目,相见恨晚了。我也相信 Amis 肯定会被React/非React/前端/非前端,只要有类似需求的开发者认可的。

    点赞 评论 复制链接分享
  • weixin_39543652 weixin_39543652 3月前

    amis 源码如何调试其中内部的逻辑,通过打断点模式,可否有解

    点赞 评论 复制链接分享
  • weixin_39883462 weixin_39883462 3月前

    同感,不会react感觉很难用

    点赞 评论 复制链接分享
  • weixin_39876282 weixin_39876282 3月前

    请问下你的项目是写在jsp页面上了吗,最终发布的时候是打包发布在Tomcat上了吗

    点赞 评论 复制链接分享
  • weixin_39569894 weixin_39569894 3月前

    更新以下状态:)

    经过两周时间连续攻关边学边做边问,项目总算完成了,先感谢一下amis团队提供这么好用的前端工具,并且耐心提供帮助解答每一个细节问题,辛苦了~

    然后总结、吐槽一下在开发过程中遇到的一些问题,希望后续能够改进优化:

    1、jssdk版能否像amis-admin那样提供一套完整的starter开发模板(包括菜单部分)?这个是在开发过程中踩到的第一个坑,搭建项目框架也是花费时间最长的。因为不会React(特别是那些路由配置)所以选择了jssdk,但是这个jssdk真的只是一个sdk,没有菜单、没有模板框架,只能自己搞,一开始选择了AdminLTE框架,但是这个框架也用到了bootstrap样式,如果用DIV+CSS的形式把amis嵌入在DIV里,会导致部分样式有冲突(也看了一下其他框架,大部分都是基于bootstrap的,都和amis有冲突),显示出来很奇怪;所以后来选择了iframe模式,单独搞了一个html把amis嵌入在iframe里,但这样也遇到很多坑,比如iframe的高度、滚动条设置等(本来就是不懂前端才选择用amis的)以及iframe和外层框架的cookie/session同步问题…… 查了很多资料调试了很久才勉强解决,到现在仍然不够完美。所以强烈希望jssdk可以提供一套完整的DIV+CSS的开发模板给starter.

    2、部分配置不够灵活。虽然提供了很多好用的控件,但有时还是不够用,比如CURD/Table只有固定Table、Card、List几种模式,如果想绘制像简历表格那样的一行多列的item不太好使。各种控件最好都能提供HTML接口,也就是json/html混合配置,默认用json配置,json不够用的时候可以用html自定义渲染。

    3、Table控件长宽固定无法自由伸缩、顺序不能拖拽调整。建议后续参考easyui优化一下。

    4、主题单一,有点苍白,特别是。建议可以参考AdminLTE那样,把主题样式单独剥离出来一个theme.css,通过切换不同的theme.css实现不同的主题。

    5、文档,还是文档。很多强大的配置参数在文档中都没写出来,得自己上来问。

    暂时先这么多把,希望amis越来越优秀~~ 真的效率太高了!!!!!后面再优化完善一下,绝对比antd、elementui好多了~~非常看好这个开源项目,给点32个赞~

    1、https://github.com/fex-team/amis-admin/tree/jssdk 这个分支是采用 jssdk 模式的 2、其实就是 tpl 类型的渲染器。 3、这个后续优化。 4、目前是有三套主题的,默认、百度云设、Dark模式。 5、努力中。。

    点赞 评论 复制链接分享
  • weixin_39815600 weixin_39815600 3月前

    忽然发现收到了消息推送,感谢大佬一直还记得这个需求呐~ 明天回公司就第一时间下载试用!!

    点赞 评论 复制链接分享
  • weixin_39815600 weixin_39815600 3月前

    请问下你的项目是写在jsp页面上了吗,最终发布的时候是打包发布在Tomcat上了吗

    我是用Python写的,java应该差不多的吧

    点赞 评论 复制链接分享
  • weixin_39876282 weixin_39876282 3月前

    请问下你的项目是写在jsp页面上了吗,最终发布的时候是打包发布在Tomcat上了吗

    我是用Python写的,java应该差不多的吧

    你是用Python写的后端吧,是前后端不分离的项目吗?你的前端页面是用啥写的

    点赞 评论 复制链接分享
  • weixin_39815600 weixin_39815600 3月前

    请问下你的项目是写在jsp页面上了吗,最终发布的时候是打包发布在Tomcat上了吗

    我是用Python写的,java应该差不多的吧

    你是用Python写的后端吧,是前后端不分离的项目吗?你的前端页面是用啥写的

    前端有模板啊,Python和Jsp都有模板的。 我是这么干的: index.html左边用模板动态生成菜单,每个菜单按钮XXX的URL(http://127.0.0.1/amis/XXX)点击之后,在右边main框架里面用iframe加载一个固定的main.html,在main.html里面接收XXX参数,用document.write重写页面加载XXX.js,XXX.js里面就是amis的那些json配置。

    点赞 评论 复制链接分享
  • weixin_39815600 weixin_39815600 3月前

    更新以下状态:)

    经过两周时间连续攻关边学边做边问,项目总算完成了,先感谢一下amis团队提供这么好用的前端工具,并且耐心提供帮助解答每一个细节问题,辛苦了~ 然后总结、吐槽一下在开发过程中遇到的一些问题,希望后续能够改进优化: 1、jssdk版能否像amis-admin那样提供一套完整的starter开发模板(包括菜单部分)?这个是在开发过程中踩到的第一个坑,搭建项目框架也是花费时间最长的。因为不会React(特别是那些路由配置)所以选择了jssdk,但是这个jssdk真的只是一个sdk,没有菜单、没有模板框架,只能自己搞,一开始选择了AdminLTE框架,但是这个框架也用到了bootstrap样式,如果用DIV+CSS的形式把amis嵌入在DIV里,会导致部分样式有冲突(也看了一下其他框架,大部分都是基于bootstrap的,都和amis有冲突),显示出来很奇怪;所以后来选择了iframe模式,单独搞了一个html把amis嵌入在iframe里,但这样也遇到很多坑,比如iframe的高度、滚动条设置等(本来就是不懂前端才选择用amis的)以及iframe和外层框架的cookie/session同步问题…… 查了很多资料调试了很久才勉强解决,到现在仍然不够完美。所以强烈希望jssdk可以提供一套完整的DIV+CSS的开发模板给starter. 2、部分配置不够灵活。虽然提供了很多好用的控件,但有时还是不够用,比如CURD/Table只有固定Table、Card、List几种模式,如果想绘制像简历表格那样的一行多列的item不太好使。各种控件最好都能提供HTML接口,也就是json/html混合配置,默认用json配置,json不够用的时候可以用html自定义渲染。 3、Table控件长宽固定无法自由伸缩、顺序不能拖拽调整。建议后续参考easyui优化一下。 4、主题单一,有点苍白,特别是。建议可以参考AdminLTE那样,把主题样式单独剥离出来一个theme.css,通过切换不同的theme.css实现不同的主题。 5、文档,还是文档。很多强大的配置参数在文档中都没写出来,得自己上来问。 暂时先这么多把,希望amis越来越优秀~~ 真的效率太高了!!!!!后面再优化完善一下,绝对比antd、elementui好多了~~非常看好这个开源项目,给点32个赞~

    1、https://github.com/fex-team/amis-admin/tree/jssdk 这个分支是采用 jssdk 模式的 2、其实就是 tpl 类型的渲染器。 3、这个后续优化。 4、目前是有三套主题的,默认、百度云设、Dark模式。 5、努力中。。

    老板,这个jssdk的模板好像不太好用呀?form下面那些子页面里面还夹杂了左边菜单栏的代码,如果菜单项增加或者减少,或者是动态生成的,那样得修改所有的页面。。。工作量很大呀,当然我可以用Python、Jsp等模板技术的include解决,不过那样就不是前后端分离了嘛,还是html+js纯前端好使。看看老板有没有啥办法优化一下?把菜单页和配置分开?配置单独的用*.json文件,尽可能减少重复的代码?

    点赞 评论 复制链接分享
  • weixin_39569894 weixin_39569894 3月前

    又想要前端分离,又不想用太复杂的框架(比如:react),这也太难了。jssdk 的版本已经非常简单了,不想再复杂化。

    点赞 评论 复制链接分享

为你推荐