【实操】uniapp纯前端搞个识别植物花草小程序

前言

🍊缘由

加班让我的头大,来个小程序压压精

🐣闪亮主角

大家好,我是JavaDog程序狗

最近因为工期紧张,加上个人颓废摸鱼,很长时间没有总结新作文章,惭愧...

当看到前端帅小伙废寝忘食做了一个拍照识花小程序时,顿时心血来潮,于是乎《识花名》小程序诞生...

😈你想听的故事

抄可是我最拿手的绝技,说干就干!

直接采用uniapp,分两个页面,一个主页,一个解析页,能省就省。

遂狗哥总结小程序前端开发攻略,与小伙伴一起分享这个知识点。

此程序本狗只用半天时间,较为简陋,勿喷勿喷。

🍭体验

小程序搜【识花名】

🎁如何获取源码

公众号:【JavaDog程序狗】

关注公众号,发送 "flower",无任何套路即可获得!

正文

🎯主要目标

1.小程序设计思路

2.小程序实操代码

🍪目标讲解

一.小程序设计思路

以本狗《识花名》小程序为例,解析如何开发自己的小程序

1. 参考同类型小程序

在你没有任何头绪进行开发时,参考优秀案例是个必要思路。

本狗需要开发扫描识别植物花草小程序,就去小程序中搜索相关的关键字,如识花、花识别、植物识别等,找到使用人数多的!,群众眼光是雪亮的,肯定能从其中找到学习的点。

多看几个后,可以取其精华去其糟粕,总结一个自己适用的设计方案

2. 确定主要功能及流程

确定好页面,如本小程序为主页面,及扫描解析页面

确认好功能,如本小程序为拍照/相册选择 识别花草植物,并调用解析接口展示

确认好流程,如本小程序流程为用户拍照/相册选择后,将图片转换成base64格式,调用识别接口将返回值解析展示到页面


二.小程序实操代码

1. 代码结构
2. 主页index.vue

主要代码

js 复制代码
<template>
	<view class="index">
		<div class="tools">
			<div class="camera" style="margin-bottom: 20px;">
				<button class="button" @click="onCamera">
					<uni-icons type="camera" size="24" color="#856E53"></uni-icons> <span style="margin-left: 4px;color: #856E53">拍照识花</span>
					<div class="hoverEffect">
						<div></div>
					</div>
				</button>
			</div>
			<div class="images">
				<button class="button" @click="onImages">
					<uni-icons type="images" size="24" color="#557F2B"></uni-icons> <span style="margin-left: 4px;">相册选择</span>
					<div class="hoverEffect">
						<div></div>
					</div>
				</button>
			</div>
		</div>
	</view>
</template>
3. 识别页index.vue

主要代码

js 复制代码
<template>
	<view class="detail">
    <cmd-nav-bar :fixed="true" back left-text="返回" title="" font-color="#fff" background-color="linear-gradient(to right, rgb(17, 153, 142), rgb(56, 239, 125))"></cmd-nav-bar>
		<div class="gradient-border" id="box">
			<image style="width: 100%; height: 100%; background-color: #eeeeee;" mode="scaleToFill" :src="imageUrl"
				@click="imgPreview(imageUrl)"></image>
		</div>
    <div class="content" style="padding-bottom: 20px" v-if="result.length>0">
      <uni-section title="识别结果" type="line">
        <uni-card :title="item.name" sub-title="" :extra="'相似度:' + (item.score * 100).toFixed(2) + '%'"  :thumbnail="avatar" @click="onClick" v-for="(item, index) in result" :key="index">
          <text class="uni-body foldable-text" :class="{ 'expanded': item.isExpanded }" :ref="'descriptionText-' + index">
            {{ item.baike_info ? item.baike_info.description : "暂无描述" }}
          </text>
          <div style="text-align: right; margin-top: 10px">
            <button type="primary" size="mini" style="width: 25%" v-if="item.showExpandButton" @click="toggleExpand(index)" class="expand-button">
              {{ item.isExpanded ? '收起' : '展开' }}
            </button>
          </div>
        </uni-card>
      </uni-section>
    </div>
    <div class="loading" style="text-align: center" v-if="result.length==0">
      <div class="loader" style="margin: 0 auto">
        <div class="load-inner load-one"></div>
        <div class="load-inner load-two"></div>
        <div class="load-inner load-three"></div>
        <span class="text">识别中...</span>
      </div>
    </div>
	</view>
</template>

总结

通过参考其他优秀的小程序案例,结合自身需求,确定了主要功能和流程,最终实现了拍照识花的小程序 。整个开发过程使用了uni-app框架,代码结构清晰,功能实现简洁明了。希望这篇文章能帮助到其他开发者,分享了前端开发的一些实用技巧和经验。

🍈猜你想问

如何与狗哥联系进行探讨

1. 关注公众号【JavaDog程序狗】

公众号回复【入群】或者【加入】,便可成为【程序员学习交流摸鱼群】的一员,问题随便问,牛逼随便吹,目前群内已有超过380+个小伙伴啦!!!

2.踩踩狗哥博客

javadog.net

里面有狗哥的私密联系方式呦 😘

大家可以在里面留言,随意发挥,有问必答

🍯猜你喜欢

文章推荐

【实操】Spring Cloud Alibaba AI,阿里AI这不得玩一下(含前后端源码)

【规范】看看人家Git提交描述,那叫一个规矩

【项目实战】SpringBoot+uniapp+uview2打造H5+小程序+APP入门学习的聊天小项目

【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序

【模块分层】还不会SpringBoot项目模块分层?来这手把手教你!

相关推荐
keyipatience25 分钟前
JavaScript学习(1)书写位置,变量、数据类型、运算符
开发语言·前端·javascript·css·学习
朱涛的自习室1 小时前
我给 Gemini 4 和 DeepSeek 搞了套「末位淘汰」,AI 干活会更猛吗?(Day 3)
android·前端·后端
java1234_小锋3 小时前
【技术专题】HTML5 网页技术 - HTML5简介 & HTML5 文档结构
前端·html·html5
鶴哥只手遮天3 小时前
Vue 3 核心源码深度剖析系列(v3.5.44)-第 1 章 项目全景:monorepo 架构与工程化体系
前端·vue.js·开源
流星。。方4 小时前
小团队官网SEO落地:前端语义化与静态生成的工程实践
前端·状态模式
用户530429765794 小时前
盘点危化品搬运诊断的6类工具与自处理边界判断
前端
curtain4 小时前
从古法编程到 Agent:我入行这两年,AI 改变了什么
前端·openai
zyfts4 小时前
10分钟自制Codex钉钉通知Skill:AI干完活自动钉钉提醒你
前端
大孜然4 小时前
孜然QQ频道自动化程序机器人配置教程
前端
用户469384921554 小时前
AIUI 焦点高亮切换失效排查与规避:为什么按钮不变换形态呢?
前端