国内大厂AI插件评测:根据UI图生成Vue前端代码

使用IDEA打开一个ruoyi增强项目:yudao-ui-admin-vue3,在IDEA插件功能中安装以下AI插件。

1.CodeBuddy插件

登录CodeBuddy后,AI选择deepseek-v3,输入提示语:

你是一个专业的程序员,擅长Web应用开发。
请将images目录下的UI图片转换成专业的前端代码:
database-list.png,database-add.png,environment-add.png

要求:
1. 代码必须是HTML、CSS、JavaScript的组合。
2. 代码风格参考当前项目中的前端开发规范。
3. 请将生成的代码放在src/api/lowcode, src/views/lowcode 等相关的文件夹中。

AI输出

通过分析用户管理和表单页面的代码,我了解到以下关键信息:
1. 项目使用 Vue 3 + TypeScript + Element Plus 技术栈
2. 页面结构遵循以下模式:
列表页使用 el-table 展示数据
表单页使用 el-form 和 el-row/el-col 布局
使用 ContentWrap 组件作为内容容器
使用 Dialog 组件作为表单弹窗

3. 代码风格特点:
使用组合式 API (<script setup>)
使用 TypeScript 类型定义
国际化支持 (useI18n)
权限控制 (v-hasPermi)

4. 组件组织方式:
列表页和表单页分离
表单组件通过 ref 暴露方法
使用 defineExpose 暴露组件方法
现在,我需要实现三个页面:
1. database-list.png - 数据库列表页
2. database-add.png - 数据库添加/编辑表单
3. environment-add.png - 环境添加/编辑表单

由于我无法直接查看图片内容,我需要向用户请求这些页面的具体功能和布局描述。

可以看到目前deepseek-v3 不支持图片识别,再次输入提示语,看看效果

我理解用户希望我将原型图片转换为前端代码,但由于我无法直接查看图片内容,我需要基于常见的低代码平台数据库和环境管理功能来创建这些页面。

我将按照以下步骤进行:
1. 创建必要的目录结构
2. 实现数据库列表页面
3. 实现数据库添加/编辑表单
4. 实现环境添加/编辑表单
5. 创建对应的API文件

首先,让我创建所需的目录结构.....

生成代码

src/views/database/index.vue
src/views/database/DatabaseForm.vue
src/views/database/Environment.vue
src/api/lowcode/database.ts
src/api/lowcode/environment.ts

2.Lingma插件

 登录通义灵码后,AI使用qwen3,输入提示语:

你是一个专业的程序员,擅长Web应用开发。
请将images目录下的UI图片转换成专业的前端代码:
database-list.png,database-add.png,environment-add.png

要求:
1. 代码必须是HTML、CSS、JavaScript的组合。
2. 代码风格参考当前项目中的前端开发规范。
3. 请将生成的代码放在src/api/lowcode, src/views/lowcode 等相关的文件夹中。

AI输出

### 提示词内容要点
1. **角色定义**:
   - 你被定义为一个专业的程序员,擅长 Web 应用开发。

2. **任务目标**:
   - 将 `images` 目录下的三张原型图转换成 HTML、CSS 和 JavaScript 组合的前端代码。

3. **具体要求**:
   - 使用 HTML、CSS 和 JavaScript 实现。
   - 代码风格需参考当前项目中的前端开发规范。
   - 生成的代码应放置在以下目录中:
     - `src/api/lowcode`:可能存放与低代码相关的接口请求逻辑。
     - `src/views/lowcode`:用于存放低代码模块的页面视图组件。

......

如果你希望我帮助你根据这些原型图生成具体的前端代码,请上传这些图片或将它们的内容描述清楚,
我可以为你提供更具体的实现方案。

生成代码:无

        如果你希望我帮助你根据这些原型图生成具体的前端代码,请上传这些图片或将它们的内容描述清楚,我可以为你提供更具体的实现方案。

 

3.Trae插件

登录trae后,AI使用Doubao-1.5-pro,输入提示语:

你是一个专业的程序员,擅长Web应用开发。
请将images3.2.2目录下的UI图片转换成专业的前端代码:
database-list.png,database-add.png,environment-add.png
要求:
1. 代码风格参考当前项目中的前端开发规范。
2. 当前项目为vue3项目,使用了element-plus组件库。
3. 请将生成的代码放在src/api/lowcode, src/views/lowcode 等相关的文件夹中。

AI输出

我将依据项目的Vue3和ElementPlus技术栈,
参考项目现有代码风格,把images目录下的
图片转为对应前端组件。
计划在src/views/lowcode创建Vue组件,
在src/api/lowcode编写接口请求代码,
确保符合项目规范。
......

生成代码

src\views\lowcode\DatabaseList.vue
src\views\lowcode\DatabaseAdd.vue
src\views\lowcode\EnvironmentAdd.vue
src\api\lowcode\database.js
src\api\lowcode\environment.js

4.Baidu Comate插件

登录百度灵码comate后,AI使用默认,输入提示语:

你是一个专业的程序员,擅长Web应用开发。
请将images目录下的UI图片转换成专业的前端代码:
database-list.png,
database-add.png,
environment-add.png
要求:
1. 代码风格参考当前项目中的前端开发规范。
2. 当前项目为vue3项目,使用了element-plus组件库。
3. 请将生成的代码放在src/views/lowcode文件夹中。

AI输出

思考过程
1. 首先需要查看images目录下的三张UI图片内容
2. 根据图片内容设计对应的Vue3组件
3. 使用element-plus组件库实现UI
4. 将生成的代码写入src/views/lowcode目录
5. 首先查看database-list.png图片内容
我将分析database-list.png的UI设计:

分析
思考过程
我将分析数据库列表页面的UI设计:

分析
思考过程
我将查看images目录下的文件结构:
......

生成代码

src/views/lowcode/DatabaseList.vue
src/views/lowcode/DatabaseAdd.vue
src/views/lowcode/EnvironmentAdd.vue
src/views/lowcode/index.vue
src/views/lowcode/TestPage.vue
src/views/lowcode/router.ts

 

能力评测结果

AI插件AI模型UI图生成代码能力
CodeBuddydeepseek-v3目前不支持,但可以根据不完整的提示词生成代码
Lingmaqwen3目前不支持,必须根据完整的字段提示词才能生成代码
TraeDoubao-1.5-pro支持,可以识别UI图,自动生成前端代码
Baidu ComateZulu支持,可以识别UI图,自动生成前端代码

 

### 是否存在根据图片生成 Vue 代码的工具或方法 尽管当前的技术尚未达到完全通过图片自动生成高质量 Vue 代码的程度,但仍有一些工具和技术能够部分实现这一目标。以下是相关内容: #### 工具与技术现状 1. **原型设计到代码的转化** 墨刀等原型设计工具提供了从原型图导出代码的功能[^3],虽然这些功能主要集中在HTML和CSS层面,但可以通过扩展插件或其他方式进一步转化为Vue代码。 2. **自动化构建工具的应用** 自动化脚本如`build-page.js`可以被用来解析配置文件并生成对应的Vue代码片段[^2]。这种方式依赖于预定义的模板结构以及可替换变量的设计思路。 3. **特定组件库的支持** 部分UI框架(如MuseUI)提供可视化的拖拽布局工具来快速生成`.vue`文件[^5]。这类工具有助于减少手动编码的工作量,尤其适用于标准组件场景下的应用开发。 4. **API驱动的方式补充细节逻辑** 对于动态数据交互需求,则可通过设置诸如 `detailApi:'getStoreContractById'` 这样的属性值指定后端服务接口名称从而完成更复杂的业务处理流程定义[^4]。 #### 实际操作建议 由于直接依据图像生成完整的前端页面仍面临诸多挑战,因此推荐采用如下策略: - 使用专门针对某一类视觉样式或者交互行为定制好的开源项目作为基础; - 结合现有的低代码平台资源进行二次开发优化; - 利用人工智能辅助识别图形中的元素特征后再映射至相应标签语义上进而形成初步草稿供后续调整完善之用。 ```javascript // 示例:简单的 vue 组件生成逻辑 function createComponent(template, props){ const componentTemplate = template.replace(/{{prop}}/g,(match)=>props[match]); return `<template>${componentTemplate}</template>`; } let myProps={"title":"Hello","content":"World"}; console.log(createComponent("<div><h1>{{title}}</h1><p>{{content}}</p></div>",myProps)); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星梦天河

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值