前端摸鱼神器,设计稿一键导出 「小程序/Vue/Uni-app」代码

2021 年过一半了,各位切图还开心吗?javascript

最近我遇到这个事情。css

640.png

emmm,这位产品小兄弟,说好只加 3 个页面,最后硬是让产品加了 6 个页面,差点凑齐七个小矮人了,后面的 UI 稿就像这样(考虑到公司利益,本文采用网上案例做为参考):html

image.png

(资源出自网络,百度云盘连接: pan.baidu.com/s/1aaPwQevg… 提取码: z2w7)前端

打工人何须为难打工人image.png。面对这两排页面,对于 CSS 比较弱的我来讲,简直噩梦。java

image.png

正当我苦恼着,忽然想起上次同事推荐给个人一款切图神器image.png看来能够用起来了。小程序

这款神器究竟是啥?微信小程序

image.png这款神器就是「CodeFun」,它号称“UI 设计稿智能生成源代码,10 分钟完成 8 小时工做量”,让咱们作前端,不搬砖前端框架

那就试试看~微信

体验一把一键生成代码

说干就干,我按照官网介绍的三个步骤,顺利将 UI 稿件,并转换为 Vue.js 代码了,看下最终效果:markdown

image.png

从导入文件到导出代码,先后只花了三分钟,简直不要太爽了image.png

说说使用方法吧~

CodeFun」官网上介绍的快速上手流程,只需 3 个步骤便可从 UI 稿到生成项目代码。(该不会吹牛吧)

image.png

依葫芦画瓢,首先我按照官网说明,安装好「CodeFun」插件,而后准备好 sketch 素材(也支持 PS 素材):

image.png 而后开始三个步骤(省略安装插件过程):

直接打开 sketch 文件后,在顶部「插件」菜单,选择「CodeFun」的「上传设计稿」菜单:

image.png

而后在弹框中登陆帐号,并选择建立的「项目」和「画板」:

image.png

而后点击「上传」,等待上传完成后,后台便立刻能看到咱们导入的项目,而且每一个页面整齐摆放,咱们随便打开一个页面看看:

image.png

熟悉的代码,熟悉的 HTML/CSS/JavaScript 映入眼帘。image.png 而后试试导出项目代码,能够自行选择导出「微信小程序」或者「Vue.js」项目,还有选择导出的是 rpx 单位仍是 px 单位,简直太贴心了!

image.png

说说简单体验后的感觉

太香了,咱们能够根据项目须要,选择生成 H5 或者小程序代码,还原度极高,很符合官网介绍的特色「精准还原设计稿,生成如工程师手写通常的代码」。

固然,毕竟是自动生成,可能存在部分不完美的地方(为CodeFun加🍗),在实际项目部署前,咱们花点时间作样式微调,而后加上本身的业务处理逻辑,就能够啦。

这给我省下太多切图时间了!image.png

image.png

固然,这里只是简单介绍,你们能够体验下(官网:code.fun),而后结合文档,相信你会颇有收获~

CodeFun 还有哪些强大功能?

在我翻阅「CodeFun」文档时,发现它居然还有好多强大的功能。image.png

1.强大的 List 标签组件

List 标签组件用于循环列表,它的强大之处在于,能够自动将类似的列表内容,并自动识别为 List 标签,生成 v-for 风格的代码。那么咱们眼见为实,如下面页面评论列表为例,试试看:

image.png

红色框内容设置为 List 标签后,生成代码以下(须要开启“将 List 标签输出为循环列表”):

<div class="flex-col list">
  <template v-for="(item, i) in listJWuhbbAm">
    <div class="list-item flex-col" :key="'item' + i">
      <div class="top-group flex-row">
        <img class="image_15" :src="item.avatar" />
        <div class="right-group flex-col">
          <span class="text_20">{{item.name}}</span>
          <span class="text_22">{{item.date}}</span>
        </div>
      </div>
      <span class="text_24">{{item.desc}}</span>
    </div>
  </template>
</div>
复制代码

其 JS 代码以下(须要开启“数据绑定输出模式”):

export default {
  data() {
    return {
      "listJWuhbbAm": [{
        "avatar": "https://codefun-proj-user-res-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016341787250137.png",
        "name": "晓晓晓",
        "date": "2019-02-26",
        "desc": "很是的好,干净整洁,卫生作得很到位,房东人很好,离地铁站很近,五星好评,推荐哦!"
      }, {
        "avatar": "https://codefun-proj-user-res-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016342203168767.png",
        "name": "啦啦菇凉",
        "date": "2019-02-16",
        "desc": "很是的好,干净整洁,卫生作得很到位,房东人很好,很负责任,离地铁站很近,生活方便,附近不少美食街,大型购物广场,五星好评,推荐推荐哦,来了你就不想走的地方…"
      }, {
        "avatar": "https://codefun-proj-user-res-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016343523144906.png",
        "name": "不告诉你",
        "date": "2019-02-16",
        "desc": "西天的晚霞挥动着绚丽的纱巾,晚风吹起来,一支支狗尾草摇响一渠黄昏的抒情曲。一排排白色的小木屋出现了,像童话通常精致,又像梦同样美丽。"
      }]
    };
  },

};
复制代码

和咱们实际业务开发同样,这里的 List 列表也是共用 CSS 样式代码的:

.list-item {
  padding: 27rpx 28rpx 28rpx;
  border-bottom: solid 2rpx rgb(245, 245, 245);
}

.list {
  margin-top: 15px;
}
复制代码

是否是很香,用着还很方便~👍

2.优秀的 Grid 布局

在业务开发中,常常会遇到如「多列操做按钮」这种网格类的布局需求,以下图红色框内容:

image.png

考虑到不一样尺寸屏幕的适配问题,常常须要对布局进行特殊设置,经常使用就有 Grid 布局,在「CodeFun」中,就支持自动将设计稿中这类 UI 生成为 Grid 布局代码,简单操做后,上图转化为下面代码:

<div class="grid">
  <div class="grid-item flex-col items-center">
    <img src="https://project-user-resource-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016485084464827.png" class="image_7" />
    <span class="text_9">附近</span>
  </div>
  <div class="grid-item flex-col items-center">
    <img src="https://project-user-resource-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016485093876260.png" class="image_7" />
    <span class="text_9">市区</span>
  </div>
  <div class="grid-item flex-col items-center">
    <img src="https://project-user-resource-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016485107042498.png" class="image_7" />
    <span class="text_9">写字楼</span>
  </div>
  <div class="grid-item flex-col items-center">
    <img src="https://project-user-resource-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016485084464827.png" class="image_7" />
    <span class="text_9">郊区</span>
  </div>
  <div class="grid-item flex-col items-center">
    <img src="https://project-user-resource-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016485093876260.png" class="image_7" />
    <span class="text_9">公寓</span>
  </div>
  <div class="grid-item flex-col items-center">
    <img src="https://project-user-resource-1256085488.cos.ap-guangzhou.myqcloud.com/60d5579cf7299c00115e83a5/60ead063fdb7540011c108e0/16260016485107042498.png" class="image_7" />
    <span class="text_9">城中村</span>
  </div>
</div>
复制代码

样式代码以下:

.grid-item {
  padding: 9px 0;
}

.grid {
  margin: 9px 12px 0 11px;
  color: rgb(51, 51, 51);
  font-size: 12px;
  font-weight: 500;
  line-height: 17px;
  white-space: nowrap;
  height: 162px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
复制代码

这就很赞了。

image.png

3.灵活的组件类型

当咱们须要设置顶部 header 或者底部固定 footer 时,只需将组件类型设置成 Header 或者 Footer 标签便可:

image.png

4.方便的路由跳转设置

对于前端应用,常常须要在不一样页面进行跳转,「CodeFun」也支持设置页面路由跳转:

image.png

生成了下面的 JS 代码:

export default {
  data() {
    return {};
  },
  methods: {
    view_21OnClick() {
      this.$router.push({
        name: 'index'
      });
    }
  }
};
复制代码

在「CodeFun」使用过程当中,加上这几个功能,已经能知足咱们大部分的切图场景了,节省下来的切图时间,可让咱们有更多时间用来处理业务逻辑。cool👍

对 CodeFun 的思考

当咱们在项目中开始使用 「CodeFun」,会发现咱们业务研发流程悄悄发生了变化,下图对比了两种业务研发流程:

image.png

显然,新的研发流程搭配「CodeFun」,会更加灵活且高效~

体验总结

体验了几天「CodeFun」后,说说个人一些建议:

  1. 能够增长对 React/Angular 等前端框架的支持;(为了能照顾到更多用户哈)
  2. 「数据绑定」模块的交互不够直观,对新手可能很难理解如何去进行配置。(能够作得更直观一点)

image.png我认为「CodeFun」重要的价值在于:利用高效的识别特色,大幅度帮助前端工程师从繁琐的页面切图中解放出来。经过较低的学习成本,让使用者能更加简单且高效的完成需求。

目前「CodeFun」产品还在快速迭代,建议你们在使用过程当中,尽可能避免使用太过复杂的 UI 稿,可能会存在生成效果的误差(相信「CodeFun」工程师们已经在努力减少这些误差),但其实也还好,咱们能够在生成的代码中,适当作一些调整便可。

perfect~!image.png

看到这里,是否是很激动!

点击官网立刻体验

code.fun

点个「赞」吧,为「CodeFun」工程师们加🍗

相关文章
相关标签/搜索