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

开搞:第四个微信小程序:图上县志

原因:我换了一个微信号来搞,因为用同一个用户,备案只能一个个的来。这样不行。所以我换了一个。原来注册过小程序。现在修改即可。注意做好计划后,速度备案和审核,不然你时间浪费不起。30元花起。

结构:

  +---------------------+| 前端(腾讯地图+UI)   |+----------+----------+| 用户点击/交互+----------v----------+| 后端(Node.js/Python)|+----------+----------+| 调用API聚合数据+----------v----------+     +-----------------+| 腾讯地图行政区划API    <-----> 获取边界坐标    |+----------+----------+     +-----------------+|+----------v----------+     +-----------------+| 百度百科/政府数据API  <-----> 历史简介与名人   |+----------+----------+     +-----------------+|+----------v----------+     +-----------------+| 天行数据/新闻API     <-----> 热点新闻资讯     |+---------------------+     +-----------------+

一、开发工具准备

小程序开发平台的工具

 切换用户,使用新的账号。我扫。扫完等着就行了。

vscode+taro

代码管理 git,最好收工时,再进行吧。

我的主要目的是为了用o3

vscode+taro

打开code

1.找个地方先。我这记忆很差,每次都要查找。我用的是pnpm

(突然想起昨天的两个点,记忆一下:一个是跨页面信息同步(类似于购物车事件),一个是事件冒泡 阻止(页面上边有一层挡着的。)。)

安装及使用 | Taro 文档

Microsoft Windows [版本 10.0.26100.4061]
(c) Microsoft Corporation。保留所有权利。D:\gitee>pnpm install -g @tarojs/cliWARN  9 deprecated subdependencies found: @babel/plugin-proposal-object-rest-spread@7.20.7, @humanwhocodes/config-array@0.11.14, @humanwhocodes/object-schema@2.0.3, @swc/register@0.1.10, @types/sass@1.45.0, eslint@8.41.0, glob@7.2.3, inflight@1.0.6, rimraf@3.0.2
Already up to date
Progress: resolved 654, reused 576, downloaded 0, added 0, done
Done in 10.6s using pnpm v10.11.0D:\gitee>npm info @tarojs/cli@tarojs/cli@4.1.1 | MIT | deps: 16 | versions: 1016
cli tool for taro
https://github.com/NervJS/taro#readmekeywords: taro, weappbin: tarodist
.tarball: https://registry.npmjs.org/@tarojs/cli/-/cli-4.1.1.tgz
.shasum: 0b031be17d74dde85cd663fcd015d85c9a7585fa
.integrity: sha512-qZhmTglEzU8Vq16qfe7DI0HBrjeiU/iLKyLJuL2j28URks82QwSGCQZaAO4a7cBkF1OchwIPgVBCL9dei0Nhbw==
.unpackedSize: 443.4 kBdependencies:
@tarojs/binding: 4.1.1            axios: ^1.6.8                     minimist: ^1.2.8
@tarojs/helper: 4.1.1             cli-highlight: ^2.1.11            ora: ^5.4.1
@tarojs/plugin-doctor: ^0.0.13    download-git-repo: ^3.0.2         semver: ^7.6.0
@tarojs/service: 4.1.1            envinfo: ^7.12.0                  validate-npm-package-name: ^5.0.0
@tarojs/shared: 4.1.1             inquirer: ^8.2.6
adm-zip: ^0.5.12                  latest-version: ^5.1.0maintainers:
- yuche <i@yuche.me>
- xuanzebin <492247143@qq.com>
- defaultlee <weitaozsh@gmail.com>
- drchan <798095202@qq.com>
- kyjo <bestkyjo@gmail.com>
- qq592743779 <592743779@qq.com>
- advancedcat <wshx1938@163.com>
- baosiqing <baosiqing@163.com>
- zakary <zakarycode@Gmail.com>
- liuzejia <790868516@qq.com>
- vasily.cjj <chenchiajun@gmail.com>dist-tags:
1.x: 1.3.46                         canary: 4.0.7-canary.6              test: 4.0.9-alpha.8
2.x: 2.2.22                         experimental: 0.0.0-experimental.2  theta: 3.6.15-theta.0
3.0: 3.0.29                         latest: 4.1.1                       v3-latest: 3.6.37
alpha: 4.1.1-alpha.2                next: 4.0.2
beta: 4.0.10-beta.4                 nightly: 3.6.24-nightly.10published 4 days ago by defaultlee <weitaozsh@gmail.com>D:\gitee>taro init mapKnowledge
👽 Taro v3.6.37‼ 获取 taro 全局配置文件失败,不存在全局配置文件:C:\Users\Administrator\.taro-global-config\index.jsonTaro 即将创建一个新项目!
Need help? Go and open issue: https://tls.jd.com/taro-issue-helper? 请输入项目介绍
D:\gitee>pnpm @tarojs/cli init mapKnowledgeERR_PNPM_NO_IMPORTER_MANIFEST_FOUND  No package.json (or package.yaml, or package.json5) was found in "D:\gitee".D:\gitee>taro -v
👽 Taro v3.6.373.6.37

意外不?安装的4.1,使用的3.6?反正是新学习,无所谓了。用最新 的。

 

ok了,继续

D:\gitee>taro init mapKnowledge
👽 Taro v4.1.1Taro 即将创建一个新项目!
Need help? Go and open issue: https://tls.jd.com/taro-issue-helper? 请输入项目介绍 点击地图,就可以得到该区域的相关知识。
? 请选择框架 React
? 是否需要使用 TypeScript ? Yes
? 是否需要编译为 ES5 ? No
? 请选择 CSS 预处理器(Sass/Less/Stylus) Sass
? 请选择包管理工具 pnpm
? 请选择编译工具 Webpack5
? 请选择模板源 Gitee(最快)
√ 拉取远程模板仓库成功!
? 请选择模板 默认模板

好了,用codea打开这个文件夹,进入下一步的操作。

注意使用一个有额度的账号。

进入,开始初始化吧。pnpm install

上图中的命令是最常用的。要记住。开发过程中用第一个命令,动态编译。结束时用第二个命令加上 -production。。上面有说明。

pnpm install

 速度感人,下午接着。好吧,到下午了。

接着。

pnpm dev dev:weapp

(base) PS D:\gitee\mapKnowledge> pnpm dev:weapp

> mapKnowledge@1.0.0 dev:weapp D:\gitee\mapKnowledge
> npm run build:weapp -- --watch


> mapKnowledge@1.0.0 build:weapp
> taro build --type weapp --watch

👽 Taro v4.1.1

Tips:
1. 预览模式生成的文件较大,设置 NODE_ENV 为 production 可以开启压缩。
Example:
$ set NODE_ENV=production && taro build --type weapp --watch
2. 建议开启持久化缓存功能,能有效提升二次编译速度,详情请参考: https://docs.taro.zone/docs/config-detail#cache。


提示  appid     touristappid
生成  工具配置  D:\gitee\mapKnowledge\dist/project.config.json
启动  开发者工具-项目目录  D:\gitee\mapKnowledge\dist

 再接着,打开微信开发者工具,找到对应的文件夹下的dist文件夹。

修改一上,看结果:

 OK了

下边正式开工:

二、腾讯地图相关

1.注册一个账号,最好用一个个体户的信息来提升下额度,否则,只能测试

腾讯位置服务 - 立足生态,连接未来

 2.创建一个新的应用

在这时,我就不创建了,共用原来的。

服务提示:

WebService API | 腾讯位置服务

设置白名单:

发现了几个有意思的调用 。

天气WebService API | 腾讯位置服务

POiWebService API | 腾讯位置服务

我的是高亮需求,看我找到了什么》

 好吧,最好的高德。我就用一下吧,反正这是一个知识应用。

打开高德地图开放平台,注册登录,支付宝认证OK。

 高德地图的免费用量高德控制台

1.1配置文件:存放高德的key

1.2组件文件:

import React, { useState, useEffect } from 'react';
import { View } from '@tarojs/components';
import { WebView } from '@tarojs/components';
import Taro from '@tarojs/taro';
import { AMapKey } from '../config/amapConfig';const AMapComponent: React.FC = () => {const [location, setLocation] = useState({latitude: 35.04,longitude: 118.65});const [address, setAddress] = useState('定位中...');// 生成高德地图HTMLconst generateMapHTML = () => {return `<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>高德地图</title><style>html, body, #container { width: 100%; height: 90vh; margin: 0;padding: 0;}</style><script type="text/javascript" src="https://webapi.amap.com/maps?v=2.0&key=${AMapKey}"></script></head><body><div id="container"></div><script>var map = new AMap.Map('container', {zoom: 14,center: [${location.longitude}, ${location.latitude}]});// 添加定位控件map.plugin('AMap.Geolocation', function() {var geolocation = new AMap.Geolocation({enableHighAccuracy: true,timeout: 10000,buttonOffset: new AMap.Pixel(10, 20),zoomToAccuracy: true,showButton: true});map.addControl(geolocation);geolocation.getCurrentPosition();});</script></body></html>`;};useEffect(() => {// 获取位置信息Taro.getLocation({type: 'gcj02',success: async function (res) {setLocation({latitude: res.latitude,longitude: res.longitude});// 通过高德地图API获取地址信息try {const response = await Taro.request({url: `https://restapi.amap.com/v3/geocode/regeo`,data: {key: AMapKey,location: `${res.longitude},${res.latitude}`,extensions: 'base'}});if (response.data.status === '1' && response.data.regeocode) {const { province, city, district } = response.data.regeocode.addressComponent;setAddress(`${province} ${city} ${district}`);}} catch (error) {console.error('获取地址失败:', error);setAddress('获取地址失败');}},fail: function() {Taro.showToast({title: '定位失败',icon: 'none'});}});}, []);return (<View><WebView src={`data:text/html,${encodeURIComponent(generateMapHTML())}`} /><View style='height: 10vh; display: flex; align-items: center; justify-content: center; background: #fff;'>{address}</View></View>);
};export default AMapComponent;

 新建一个key,将key和密钥放在配置上。

  1. 高德开放平台配置

    • 确保您的 Key 是 Web 服务 (JS API) 的 Key
    • 需要配置安全密钥 (jscode)
    • 需要添加域名白名单

 今天 就到这时。下班了,明天接着高。

相关文章:

开搞:第四个微信小程序:图上县志

原因&#xff1a;我换了一个微信号来搞&#xff0c;因为用同一个用户&#xff0c;备案只能一个个的来。这样不行。所以我换了一个。原来注册过小程序。现在修改即可。注意做好计划后&#xff0c;速度备案和审核&#xff0c;不然你时间浪费不起。30元花起。 结构&#xff1a; -…...

模型评估与调优(PyTorch)

文章目录 模型评估方法混淆矩阵混淆矩阵中的指标ROC曲线&#xff08;受试者工作特征&#xff09;AUCR平方残差均方误差&#xff08;MSE&#xff09;均方根误差&#xff08;RMSE&#xff09;平均绝对误差&#xff08;MAE&#xff09; 模型调优方法交叉验证&#xff08;CV&#x…...

sockaddr结构体详解

在网络编程中&#xff0c;sockaddr 结构体用于表示套接字的地址信息。由于不同协议&#xff08;如 IPv4、IPv6、Unix 域套接字&#xff09;的地址格式不同&#xff0c;实际使用中通常通过以下三种变体结构来处理不同类型的地址&#xff1a; 1. 通用地址结构&#xff1a;struct …...

Seata源码—7.Seata TCC模式的事务处理一

大纲 1.Seata TCC分布式事务案例配置 2.Seata TCC案例服务提供者启动分析 3.TwoPhaseBusinessAction注解扫描源码 4.Seata TCC案例分布式事务入口分析 5.TCC核心注解扫描与代理创建入口源码 6.TCC动态代理拦截器TccActionInterceptor 7.Action拦截处理器ActionIntercept…...

【语法】C++的map/set

目录 平衡二叉搜索树 set insert() find() erase() swap() map insert() 迭代器 erase() operator[] multiset和multimap 在之前学习的STL中&#xff0c;string&#xff0c;vector&#xff0c;list&#xff0c;deque&#xff0c;array都是序列式容器&#xff0c;它们的…...

【FAQ】HarmonyOS SDK 闭源开放能力 —Live View Kit (3)

1.问题描述&#xff1a; 通过Push Kit创建实况窗之后&#xff0c;再更新实况窗失败&#xff0c;平台查询提示“实况窗端更新失败&#xff0c;通知未创建或已经过期”。 解决方案&#xff1a; 通过Push Kit更新实况窗内容的过程是自动更新的。客户端在创建本地实况窗后&#…...

vue vite textarea标签按下Shift+Enter 换行输入,只按Enter则提交的实现思路

注意input标签不能实现&#xff0c;需要用textarea标签 直接看代码 <template><textareav-model"message"keydown.enter"handleEnter"placeholder"ShiftEnter 换行&#xff0c;Enter 提交"></textarea> </template>&l…...

MySQL多线程备份工具mysqlpump详解!

MySQLPUMP备份工具详解 1. 概述 MySQLPump 是 MySQL 5.7 引入的一个客户端备份工具&#xff0c;用于替代传统的 mysqldump 工具。它提供了并行处理、进度状态显示、更好的压缩支持等新特性&#xff0c;能够更高效地执行 MySQL 数据库备份操作。 2. 主要特性 并行处理&#x…...

创建信任所有证书的HttpClient:Java 实现 HTTPS 接口调用,等效于curl -k

在 Java 生态中&#xff0c;HttpClient 和 Feign 都是调用第三方接口的常用工具&#xff0c;但它们的定位、设计理念和使用场景有显著差异。以下是详细对比&#xff1a; DIFF1. 定位与抽象层级 特性HttpClientFeign层级底层 HTTP 客户端库&#xff08;处理原始请求/响应&#…...

Redisson分布式集合原理及应用

Redisson是一个用于Redis的Java客户端&#xff0c;它简化了复杂的数据结构和分布式服务的使用。 适用场景对比 数据结构适用场景优点RList消息队列、任务队列、历史记录分布式共享、阻塞操作、分页查询RMap缓存、配置中心、键值关联数据支持键值对、分布式事务、TTLRSet去重集…...

深入理解 PlaNet(Deep Planning Network):基于python从零实现

引言&#xff1a;基于模型的强化学习与潜在动态 基于模型的强化学习&#xff08;Model-based Reinforcement Learning&#xff09;旨在通过学习环境动态的模型来提高样本效率。这个模型可以用来进行规划&#xff0c;让智能体在不需要与真实环境进行每一次决策交互的情况下&…...

精益数据分析(75/126):用户反馈的科学解读与试验驱动迭代——Rally的双向验证方法论

精益数据分析&#xff08;75/126&#xff09;&#xff1a;用户反馈的科学解读与试验驱动迭代——Rally的双向验证方法论 在创业的黏性阶段&#xff0c;用户反馈是优化产品的重要依据&#xff0c;但如何避免被表面反馈误导&#xff1f;如何将反馈转化为可落地的迭代策略&#x…...

仿腾讯会议——视频发送接收

1、 添加音频模块 2、刷新图片&#xff0c;触发重绘 3、 等比例缩放视频帧 4、 新建视频对象 5、在中介者内定义发送视频帧的函数 6、完成发送视频的函数 7、 完成开启/关闭视频 8、绑定视频的信号槽函数 9、 完成开启/关闭视频 10、 完成发送视频 11、 完成刷新图片显示 12、完…...

从3.7V/5V到7.4V,FP6291在应急供电智能门锁中的应用

在智能家居蓬勃发展的当下&#xff0c;智能门锁以其便捷、安全的特性&#xff0c;成为现代家庭安防的重要组成部分。在智能门锁电量耗尽的情况下&#xff0c;应急电源外接移动电源&#xff08;USB5V输入&#xff09; FP6291升压到7.4V供电可应急开锁。增强用户在锁具的安全性、…...

java后端-海外登录(谷歌/FaceBook)

前言 由于最近公司的项目要在海外运行,因此需要对接海外的登录,目前就是谷歌和facebook两种,后面支付也是需要的,后续再进行书写 谷歌登录 这个相对比较容易,而且只提供给安卓即可,废话就不多说了,直接贴解决方案 引入maven依赖 <dependency> <groupId>com.go…...

【人工智障生成日记1】从零开始训练本地小语言模型

&#x1f3af; 从零开始训练本地小语言模型&#xff1a;MiniGPT TinyStories&#xff08;4090Ti&#xff09; &#x1f9ed; 项目背景 本项目旨在以学习为目的&#xff0c;从头构建一个完整的本地语言模型训练管线。目标是&#xff1a; ✅ 不依赖外部云计算✅ 完全本地运行…...

Selenium-Java版(frame切换/窗口切换)

frame切换/窗口切换 前言 切换到frame 原因 解决 切换回原来的主html 切换到新的窗口 问题 解决 回到原窗口 法一 法二 示例 前言 参考教程&#xff1a;Python Selenium Web自动化 2024版 - 自动化测试 爬虫_哔哩哔哩_bilibili 上期文章&#xff1a;Sel…...

一文深度解析:Pump 与 PumpSwap 的协议机制与技术差异

在 Solana 链上&#xff0c;Pump.fun 和其延伸产品 PumpSwap 构成了 meme coin 发行与流通的两大核心场景。从初期的游戏化发行模型&#xff0c;到后续的自动迁移与交易市场&#xff0c;Pump 系列协议正在推动 meme coin 从“爆发性投机”走向“协议化运营”。本文将从底层逻辑…...

星云智控v1.0.0产品发布会圆满举行:以创新技术重构物联网监控新生态

星云智控v1.0.0产品发布会圆满举行&#xff1a;以创新技术重构物联网监控新生态 2024年5月15日&#xff0c;成都双流蛟龙社区党群服务中心迎来了一场备受业界瞩目的发布会——优雅草科技旗下”星云智控v1.0.0”物联网AI智控系统正式发布。本次发布会吸引了包括沃尔沃集团、新希…...

SpringBoot(一)--- Maven基础

目录 前言 一、初始Maven 1.依赖管理 2.项目构建 3.统一项目结构 二、IDEA集成Maven 1.Maven安装 2.创建Maven项目 2.1全局设置 2.2 创建SpringBoot项目 2.3 常见问题 三、单元测试 1.JUnit入门 2.断言 前言 Maven 是一款用于管理和构建Java项目的工具&#xff…...

基于FPGA控制电容阵列与最小反射算法的差分探头优化设计

在现代高速数字系统测试中&#xff0c;差分探头的信号完整性直接影响测量精度。传统探头存在阻抗失配导致的信号反射问题&#xff0c;本文提出一种通过FPGA动态控制电容阵列&#xff0c;结合最小反射算法的优化方案&#xff0c;可实时调整探头等效容抗&#xff0c;将信号反射损…...

kakfa 基本了解

部署结构 Kafka 使用zookeeper来协商和同步&#xff0c;但是kafka 从版本3.5正式开始deprecate zookeeper, 同时推荐使用自带的 kraft. 而从4.0 开始则不再支持 zookeeper。 所以 kafka 是有control plane 和 data plane 的。 data plane 就是broker&#xff0c;control plane…...

基于Browser Use + Playwright 实现AI Agent操作Web UI自动化

Browser Use是什么 Browser Use是一个开源项目官网&#xff1a;Browser Use - Enable AI to control your browser&#xff0c;专为大语言模型&#xff08;LLM&#xff09;设计的只能浏览器工具&#xff0c;能够让AI像人类一样自然的浏览和操作网页&#xff0c;支持多标签页管…...

Origin绘制多因子柱状点线图

多因子柱状点线图是一种结合柱状图和点线图的复合图表&#xff0c;常用于同时展示多个因子&#xff08;变量&#xff09;在不同分组下的分布和趋势变化。 适用场景&#xff1a; &#xff08;1&#xff09;比较多个因子在不同分组中的数值大小&#xff08;柱状图&#xff09;&a…...

Web漏洞扫描服务的特点与优势:守护数字时代的安全防线

在数字化浪潮中&#xff0c;Web应用程序的安全性已成为企业业务连续性和用户信任的核心要素。随着网络攻击手段的不断升级&#xff0c;Web漏洞扫描服务作为一种主动防御工具&#xff0c;逐渐成为企业安全体系的标配。本文将从特点与优势两方面&#xff0c;解析其价值与应用场景…...

iOS 直播技术及优化

iOS直播技术的实现和优化涉及多个技术环节&#xff0c;需结合协议选择、编解码方案、播放器技术及性能调优等多方面。 一、核心技术实现 协议选择与传输优化 HLS&#xff08;HTTP Live Streaming&#xff09;&#xff1a;苹果官方推荐&#xff0c;基于HTTP分片传输&#xff0c…...

抛弃传统P2P技术,EasyRTC音视频基于WebRTC打造教育/会议/远程巡检等场景实时通信解决方案

一、方案背景 随着网络通信发展&#xff0c;实时音视频需求激增。传统服务器中转方式延迟高、资源消耗大&#xff0c;WebP2P技术由此兴起。EasyRTC作为高性能实时通信平台&#xff0c;集成WebP2P技术&#xff0c;实现低延迟、高效率音视频通信&#xff0c;广泛应用于教育、医疗…...

俄罗斯军总参情报局APT28组织瞄准援乌后勤供应链发起全球网络攻击

2025年5月&#xff0c;由美国、英国、欧盟和北约网络安全与情报机构联合发布的最新网络安全公告披露&#xff0c;俄罗斯军总参情报局&#xff08;GRU&#xff09;第85特别服务中心第26165部队&#xff08;又称APT28、Fancy Bear、Forest Blizzard和BlueDelta&#xff09;正持续…...

杰发科技AC7801——PWM获取固定脉冲个数

测试通道6 在初始化时候打开通道中断 void PWM1_GenerateFrequency(void) {PWM_CombineChConfig combineChConfig[1]; //组合模式相关结构体PWM_IndependentChConfig independentChConfig[2];//独立模式相关结构体PWM_ModulationConfigType pwmConfig; //PWM模式相关结构体PWM…...

MacBookPro上macOS安装第三方应用报错解决方案:遇到:“无法打开“XXX”,因为无法确定(验证)开发者身份?怎么解决

MacBook Pro 上 macOS 安装第三方应用报错解决方案 —— 彻底搞定「无法打开“XXX”&#xff0c;因为无法确定开发者身份」 适用系统&#xff1a;macOS Catalina 10.15 ~ macOS Sonoma 14.x 适用机型&#xff1a;Intel / Apple Silicon 全系 MacBook Pro 文章目录 **MacBook P…...