当前位置: 首页 > news >正文

与 Cursor AI 对话编程:2小时开发报修维修微信小程序

本文记录了如何通过与 Cursor AI 对话,全程不写一行代码的情况下,完成一个完整的报修小程序。整个过程展示了 AI 如何帮助我们:

  • 生成代码 、解决问题、优化实现、完善细节。

先看一下效果图:

图片

图片

图片

图片

图片

一、项目配置

首先我是这样和 AI 对话的:

我:我想开发一个报修小程序,需要哪些基础配置?
AI:我来帮你配置 app.json,首先需要:
设置导航栏样式
配置底部 tabBar
注册所有页面路径
我:好的,请帮我实现
AI:我已经生成了配置代码:
{
"pages": [
"pages/login/login",
"pages/index/index",
...
],
"window": {
"navigationBarBackgroundColor": "#4CAF50",
...
}
}
我:很好,帮我创建这些页面
AI:好的,我会依次创建每个页面的 wxml、wxss、js 文件

二、登录页面

我:需要一个简单的登录页面,输入用户名即可
AI:我来帮你设计登录页面:
先创建 login.wxml:
<view class="container">
<view class="login-box">
<input class="input" placeholder="请输入用户名" />
<button class="login-btn">登录</button>
</view>
</view>
添加样式 login.wxss:
.login-box {
...
}
实现登录逻辑 login.js:
Page({
...登录处理代码...
})
我:好的,请帮我完善样式
AI:我已添加渐变背景、阴影效果等...

三、首页模块

我:首页需要显示用户信息和快捷按钮
AI:我来设计首页布局:
index.wxml 代码:
<view class="container">
<view class="header">
<text>您好,{{userInfo.username}}</text>
</view>
<view class="quick-actions">
...三个操作按钮...
</view>
</view>
添加样式和交互...
我:最近报修记录怎么显示?
AI:我来添加报修列表组件:
<view class="repair-list">
<view class="repair-item" wx:for="{{recentRepairs}}">
...列表项内容...
</view>
</view>

四、报修表单

我:需要一个完整的报修表单
AI:我来实现表单页面:
new.wxml:
<form bindsubmit="submitRepair">
<view class="form-group">
<text class="label">报修人</text>
<input name="reporter" value="{{userInfo.username}}" />
</view>
...其他表单字段...
</form>
添加样式美化表单
实现提交逻辑
添加表单验证
我:表单样式不够美观
AI:我来优化样式:
.form-group {
margin-bottom: 30rpx;
...
}

五、报修列表

我:需要分页显示报修记录
AI:我来实现列表页面:
list.wxml:
<scroll-view
bindscrolltolower="loadMore"
refresher-enabled="{{true}}"
<view class="repair-item" wx:for="{{repairs}}">
...列表项内容...
</view>
</scroll-view>
实现分页加载逻辑
添加下拉刷新
优化列表样式

六、个人中心

我:需要个人中心页面
AI:我来实现:
admin.wxml:
<view class="container">
<view class="user-info">
<text class="avatar-text">{{userInfo.username[0]}}</text>
...
</view>
<view class="menu-list">
...菜单项...
</view>
</view>
  1. 添加退出登录功能

修改 app.js添加全局的登录状态管理:
// 添加登出方法
logout(){
return newPromise((resolve) =>{
// 清除本地存储wx.clearStorageSync();
// 清除全局数据
this.globalData.userInfo=null;
// 跳转到登录页wx.reLaunch({
url:'/pages/login/login',
success:() =>{
resolve();
}
});修改 pages/admin/admin.js中的退出登录逻辑:
wx.navigateTo({
url:'/pages/admin/settings'
});
},
onLogout(){wx.showModal({
title:'提示',
content:'确定要退出登录吗?',
success:async(res)=>{
if(res.confirm){wx.showLoading({
title:'退出中...',
mask:true
});try{
await app.logout();wx.hideLoading();
}catch(error){wx.hideLoading();wx.showToast({
title:'退出失败,请重试',
icon:'none'
});
}

七、优化细节

在开发过程中,我只需要描述问题,AI 就能帮我解决:

我:提交报修后页面没有自动刷新
AI:我来修复这个问题:
在提交成功后添加页面刷新逻辑...
我:报修列表样式不够美观
AI:我来优化列表样式:
添加卡片效果、优化间距...
我:需要添加加载提示
AI:我来添加 Loading:
使用 wx.showLoading 实现...

开发心得

  1. 与 AI 对话技巧:

  • 清晰描述需求和问题

  • 分步骤实现功能

  • 及时提出修改建议

  • 注意细节完善

  1. AI 的强大之处:

  • 直接生成完整代码

  • 快速解决各种问题

  • 代码质量有保证

  • 持续优化改进

  1. 开发建议:

  • 先规划后实现

  • 多与 AI 交流

  • 注重用户体验

  • 及时测试验证

总结

通过与 AI 的对话式开发:

  1. 无需编写代码就能完成项目

  2. 大大提升开发效率

  3. 代码质量有保证

  4. 学习了很多技巧

这种开发方式特别适合:

  • 个人开发者

  • 快速原型验证

  • 学习新技术

  • 小型项目开发

希望这个分享对大家有帮助!

相关文章:

与 Cursor AI 对话编程:2小时开发报修维修微信小程序

本文记录了如何通过与 Cursor AI 对话&#xff0c;全程不写一行代码的情况下&#xff0c;完成一个完整的报修小程序。整个过程展示了 AI 如何帮助我们&#xff1a; 生成代码 、解决问题、优化实现、完善细节。 先看一下效果图&#xff1a; 一、项目配置 首先我是这样和 AI 对…...

leetcode-73.矩阵置零-day5

class Solution {public void setZeroes(int[][] mat) {int m mat.length, n mat[0].length;// 1. 扫描「首行」和「首列」记录「首行」和「首列」是否该被置零boolean r0 false, c0 false;for (int i 0; i < m; i) {if (mat[i][0] 0) {r0 true;break;}}for (int j …...

CSS学习记录13

CSS组合器 组合器是解释选择器之间关系的某种机制。CSS选择器可以包含多个简单选择器。在简单选择器之间&#xff0c;我们可以包含一个组合器。 CSS中有四种不同的组合器&#xff1a; 后代组合器&#xff08;空格&#xff09;子选择器&#xff08;>)相邻兄弟选择器&#…...

CAD图纸加密软件哪个最好用 | 安全可靠的解决方案

CAD图纸加密软件哪个最好用 | 安全可靠的解决方案 图纸文件泄密事件频发&#xff0c;给企业带来了严重的商业损失、技术秘密泄露、公共安全威胁以及信誉损害。 为了应对这一挑战&#xff0c;选择一款既安全可靠又易于使用的CAD图纸加密软件显得尤为重要。 在众多加密软件中&a…...

基于SSM+Vue的宠物医院管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…...

处理VUE框架中,ElementUI控件u-table空值排序问题

按照以下步骤进行操作&#xff1a; 分离数据&#xff1a;首先&#xff0c;将原始数据按照username为空和非空进行分类。对非空表进行排序&#xff1a;对非空表按照username进行升序排序。合并表格&#xff1a;将空表和排序后的非空表合并&#xff0c;保证空表挂接在排序后的非…...

专业140+总分400+北京理工大学826信号处理导论考研经验北理工电子信息与通信工程,真题,大纲,参考书。

考研总分400&#xff0c;专业826信号处理导论&#xff08;信号与系统和dsp&#xff09;140&#xff0c;成功上岸北理工&#xff0c;虽然已经一段时间&#xff0c;但是后劲很大&#xff0c;每每回想还是昨日事&#xff0c;群里同学多次要求分享自己的一些经验&#xff0c;感谢大…...

Rocky DEM tutorial5_Drop Weight test_落锤试验

tutorial5_Drop Weight test_落锤实验 文章目录 tutorial5_Drop Weight test_落锤实验0. 目的1. 模型介绍2. 模型设置2.1 设置Physics2.2 导入几何2.3 定义进口面2.4 设置motion frames2.5 设置边界条件2.6 设置材料2.7 设置 materials interactions2.8 设置 Particles2.9 设置…...

C#,在 C# 语言中将 LaTeX 转换为 PNG 或 JPG 图像

在 C 语言中将 LaTeX 转换为 PNG 或 JPG 图像# 12月 28&#xff0c; 2021 2 分钟 法尔汉拉扎 在 C 语言中将 TeX 转换为 PNG JPG 图像# TeX 格式用于处理技术和科学文件。它通常用于交流或发布此类文档。在某些情况下&#xff0c;您可能需要将 TeX 文件渲染为 PNG 或 JPG 等图像…...

Elasticsearch:Mapping-映射

一、创建索引 自动生成索引字段数据类型即自动映射 创建之前&#xff0c;先删除索引防止重复创建 删除索引: DELETE product_mapping创建索引 product_mapping并且赋值 PUT /product_mapping/_doc/1 {"name": "xiaomi phone","desc": "s…...

安装Tensorflow@FreeBSD(失败)

pkg 安装&#xff0c;失败&#xff0c;找不到:pkg: No packages available to install matching science/py-tensorflow have been found in the repositories ports安装 cd /usr/ports/science/py-tensorflow make install 报错: 按照提示重新发命令 make DISABLE_VULNERA…...

API接口示例:电商商品评论数据

当然&#xff0c;以下是一个简化的电商商品评论数据API接口的示例。请注意&#xff0c;这只是一个示例&#xff0c;实际的API接口可能会更加复杂&#xff0c;并且会包含更多的验证、错误处理和安全措施。 API接口示例&#xff1a;电商商品评论数据 基础信息 API名称&#xf…...

使用idea创建一个JAVA WEB项目

文章目录 1. javaweb项目简介2. 创建2.1 idea新建项目2.2 选择&#xff0c;命名2.3 打开2.4 选择tomcat运行2.5 结果 3. 总结 1. javaweb项目简介 JavaWeb项目是一种基于Java技术的Web应用程序&#xff0c;主要用于开发动态网页和Web服务。这种项目能够构建在Java技术栈之上&a…...

解决MyBatis在 Oracle 中使用 IN 语句不能超过 1000 问题

在 Oracle 数据库中&#xff0c;IN 语句常用于查询某个字段是否属于一组特定的值。对于大多数开发者而言&#xff0c;IN 是一种简单直观的查询方式&#xff0c;能够提升开发效率&#xff0c;避免过多的 OR 语句。然而&#xff0c;许多人在使用 IN 语句时可能遇到一个问题&#…...

最长递增子序列两种算法实现(动态规划,二分查找)

恭喜你刷到博主 DP 经典题目详解部分第一期&#xff0c;想学好 DP 请关注订阅&#xff0c;会持续更新&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 建议先阅读DP算法入门 00001 最长递增子序列&#xff08;Longest Increasing Subsequence&#xff0c;简写…...

Deepmotion技术浅析(三):特征提取

DeepMotion 的特征提取模块是整个动作捕捉和 3D 追踪流程的基础&#xff0c;负责从输入的视频帧中提取出具有代表性的视觉特征。这些特征将被用于人体姿态估计、动作识别、3D 重建等后续任务。 包括&#xff1a; 1.图像特征提取 卷积神经网络&#xff08;CNN&#xff09; 卷…...

国内CentOS使用yum安装docker和docker-compose

安装docker 安装需要的软件包&#xff0c; yum-util 提供yum-config-manager功能&#xff0c;另两个是devicemapper驱动依赖 yum install -y yum-utils device-mapper-persistent-data lvm2下载yum源采用阿里云的镜像源 wget -O /etc/yum.repos.d/docker-ce.repo https://mi…...

python学opencv|读取图像(十三)BGR图像和HSV图像互相转换深入

【1】引言 前序学习过程中&#xff0c;我们偶然发现&#xff1a;如果原始图像是png格式&#xff0c;将其从BGR转向HSV&#xff0c;再从HSV转回BGR后&#xff0c;图像的效果要好于JPG格式。 文章链接为&#xff1a; python学opencv|读取图像&#xff08;十二&#xff09;BGR图…...

【鸿蒙实战开发】数据的下拉刷新与上拉加载

本章介绍 本章主要介绍 ArkUI 开发中最常用的场景下拉刷新, 上拉加载&#xff0c;在本章中介绍的内容在实际开发过程当中会高频的使用,所以同学们要牢记本章的内容。下面就让我们开始今天的讲解吧&#xff01; List 组件 在 ArkUI 中List容器组件也可以实现数据滚动的效果&a…...

面向对象设计规则和各类设计模式

面向对象设计&#xff08;Object-Oriented Design, OOD&#xff09;是一种软件设计方法论&#xff0c;它使用对象、类、继承、封装、多态等概念来组织代码。面向对象设计的核心目标是提高软件的可维护性、可扩展性和复用性。在面向对象设计中&#xff0c;遵循一定的设计原则和模…...

如何将GIMP秒变Photoshop?GimpPs主题插件完整配置指南

如何将GIMP秒变Photoshop&#xff1f;GimpPs主题插件完整配置指南 【免费下载链接】GimpPs Gimp Theme to be more photoshop like 项目地址: https://gitcode.com/gh_mirrors/gi/GimpPs 如果你正在寻找一款能让GIMP拥有Photoshop般专业界面的主题插件&#xff0c;GimpP…...

税务平台国密登录四段式加密链路实战解析

1. 这不是“加个密”那么简单&#xff1a;税务平台登录背后的真实战场你有没有试过&#xff0c;在某个政府类业务系统里点下“登录”按钮后&#xff0c;页面卡住两秒&#xff0c;控制台突然刷出一长串base64编码的密文&#xff1f;再刷新一次&#xff0c;密文全变了&#xff1b…...

Selenium动作链原理与Go实战:模拟人类交互的底层机制

1. 为什么“动作链”不是锦上添花&#xff0c;而是Selenium自动化绕不开的生死线你写过driver.FindElement(By.Id("submit")).Click()&#xff0c;也用过SendKeys("hello")&#xff0c;甚至加了Thread.Sleep(2000)等页面加载——但当你要拖拽一个滑块完成验…...

Arty S7 FPGA开发板实战指南:从硬件解析到项目开发

1. 项目概述&#xff1a;为什么是Arty S7&#xff1f;如果你是一名嵌入式开发者、数字电路设计爱好者&#xff0c;或者正在寻找一块能兼顾学习、原型验证和低成本部署的FPGA开发板&#xff0c;那么Digilent的Arty S7系列很可能已经进入了你的视野。我最初接触这块板子&#xff…...

昇腾CANN pto-isa:虚拟指令集如何把 Ascend C 翻译成硬件指令

一个 Ascend C kernel 写好后&#xff0c;要在昇腾 NPU 上执行&#xff0c;需要经过两道编译&#xff1a;第一道&#xff0c;昇腾编译器把 Ascend C 翻译成 PTO&#xff08;Parallel Tensor Orchestration&#xff09;虚拟指令&#xff1b;第二道&#xff0c;NPU 固件在运行时把…...

专栏导读:为什么需要从 MM 理解 HMM

一个真实的困境 假设你是一个 GPU 计算框架的开发者。用户写了这样一段代码&#xff1a; float *data malloc(1GB); // ... 填充数据 ... gpu_kernel<<<grid, block>>>(data); // 希望 GPU 直接访问 data在传统编程模型下&#xff0c;这不可能工作——GPU …...

Vue-antd样式系统深度解析:从主题定制到组件样式覆盖的完整指南

Vue-antd样式系统深度解析&#xff1a;从主题定制到组件样式覆盖的完整指南 【免费下载链接】vue-antd Vue UI Component & Ant.Design 项目地址: https://gitcode.com/gh_mirrors/vu/vue-antd Vue-antd作为Ant Design的Vue实现&#xff0c;提供了一个强大而灵活的样…...

为什么选择Marginalia:与Rails 7内置QueryLogs的对比分析

为什么选择Marginalia&#xff1a;与Rails 7内置QueryLogs的对比分析 【免费下载链接】marginalia Attach comments to ActiveRecords SQL queries 项目地址: https://gitcode.com/gh_mirrors/ma/marginalia Marginalia是一款强大的Ruby gem工具&#xff0c;能够为Activ…...

第2章:文档加载与智能分块——RAG的第一步

本章你将收获:支持PDF(含表格)、Word、Markdown、网页、CSV等10+格式的完整加载代码;五种分块策略的深度对比(固定大小、递归字符、语义、文档结构、按标题);元数据保留与增强的工程方法;处理100页混合格式技术手册的完整实战;以及分块参数调优的最佳实践。 📌 本章…...

Unity哥特UI资源包:SDF字体与Shader Graph工程化实践

1. 为什么哥特UI在游戏开发中长期被低估&#xff0c;又为何现在必须认真对待“哥特UI”这个词&#xff0c;很多Unity开发者第一反应是&#xff1a;不就是黑底、尖角、浮雕字、带玫瑰纹样的按钮吗&#xff1f;配个暗红渐变完事。我2019年接手一个中世纪黑暗奇幻RPG时也这么想——…...