ArcGIS JS 异常之:Invalid language tag: RangeError: Invalid language tag:

使用默认的PopupTemplate显示点击查询的内容,点击后报错:

Invalid language tag: RangeError: Invalid language tag: at new NumberFormat (<anonymous>) at o (webpack-internal:///./node_modules/@arcgis/core/intl/number.js:14:273) at c (webpack-internal:///./node_modules/@arcgis/core/intl/number.js:14:716) at f (webpack-internal:///./node_modules/@arcgis/core/intl/substitute.js:14:1386) at u (webpack-internal:///./node_modules/@arcgis/core/intl/substitute.js:14:504) at eval (webpack-internal:///./node_modules/@arcgis/core/intl/substitute.js:14:214) at eval (webpack-internal:///./node_modules/@arcgis/core/core/string.js:15:191) at [Symbol.replace] (<anonymous>) at String.replaceAll (<anonymous>) at r (webpack-internal:///./node_modules/@arcgis/core/core/string.js:15:78)

尝试AI解决,乱搞一通,越搞越乱。后面问ChatGPT,原因如下:

这个报错本质上不是"查询"本身的问题,而是 ArcGIS JS 在做字符串格式化(number/intl substitute)时,拿到了一个非法的语言标签(locale)

解决方法:

方案一:

javascript 复制代码
esriConfig.locale = "zh-CN";   // 简体中文

方案二:

ArcGIS JS 会自动读取html文件lang属性,如果该属性为空字符,会报错。改为正确的

html 复制代码
<html lang="zh">
相关推荐
majingming1235 小时前
FUNCTION
java·前端·javascript
是娇娇公主~6 小时前
C++ 中 std::deque 的原理?它内部是如何实现的?
开发语言·c++·stl
SuperEugene6 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
子兮曰7 小时前
Bun v1.3.11 官方更新全整理:新增功能、关键修复与升级验证
javascript·node.js·bun
Setsuna_F_Seiei7 小时前
AI 对话应用之页面滚动交互的实现
前端·javascript·ai编程
xuxie997 小时前
N11 ARM-irq
java·开发语言
wefly20178 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8
luanma1509808 小时前
PHP vs C++:编程语言终极对决
开发语言·c++·php
寂静or沉默8 小时前
2026最新Java岗位从P5-P7的成长面试进阶资源分享!
java·开发语言·面试
b_xinjun11209 小时前
树莓派 Ubuntu 24.04.3 LTS 安装 OpenClaw 操作说明
linux·ubuntu·arcgis