a***@163.com
a***@163.com
  • 发布:2024-10-10 19:43
  • 更新:2024-12-30 13:58
  • 阅读:239

【报Bug】APP打包、真机运行vue3 renderjs无法使用大整数,无法通过编译;但运行到浏览器却可以

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 4.29

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: BlueStacks5

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

涉及到的代码:

<script module="arcgis" lang="renderjs">  
import Map from "@arcgis/core/Map"; //报错出现在这个库里面,它本身没问题,电脑版正常,uniapp运行到Chrome也正常,打包编译报错  
import MapView from "@arcgis/core/views/MapView";  
import FeatureLayer from "@arcgis/core/layers/FeatureLayer";  

export default {  
        data(){  
            return{  

            }  
        },  
        mounted(){  
            var map=new Map({  
                basemap:""  
            });  
            var mapView=new MapView({  
                map:map,  
                container:"mapContainer",  
                center:[121.086866,31.382434],  
                zoom:5  
            });  
            var stickLayer=new FeatureLayer({  
                url:`${此处省略}/arcgis/rest/services/kunshanRoad/road/MapServer/0`,  
                outFields:["*"],  
            });  
            map.add(stickLayer);  
        }  
 }

操作步骤:

uniapp vue3 renderjs使用大整数,可以正常编译并运行到Chrome浏览器,但是APP打包、真机运行无法通过编译。

预期结果:

和开发过程运行到Chrome浏览器的结果一致

实际结果:

真机运行,打包APP编译阶段报错:
18:22:57.224 X [ERROR] Big integer literals are not available in the configured target environment ("es2015")
18:22:57.234 E:/工作/昆山基础设施平台/6/道路巡检养护/道路巡检养护/node_modules/@arcgis/core/core/pbf.js:5:4700:
18:22:57.243 5 │ ...),!(128&s))return Number(r?-(e+1n)/2n:e/2n);if(s=t[this._pos++],...
18:22:57.252 ╵

bug描述:

我在uniapp vue3 renderjs代码中引用的第三方库它使用了大整数,开发过程中运行到Chrome浏览器没有问题,但是APP打包、真机运行无法通过编译。
HBuilder报错:
18:22:57.224 X [ERROR] Big integer literals are not available in the configured target environment ("es2015")
18:22:57.234 E:/工作/昆山基础设施平台/6/道路巡检养护/道路巡检养护/node_modules/@arcgis/core/core/pbf.js:5:4700:
18:22:57.243 5 │ ...),!(128&s))return Number(r?-(e+1n)/2n:e/2n);if(s=t[this._pos++],...
18:22:57.252 ╵ ~~

2024-10-10 19:43 负责人:无 分享
已邀请:
enderX

enderX

看起来像是不支持 BigInt ?
可以尝试修改一下vite 配置看看行不行
https://esbuild.github.io/api/#supported
或者看看有没有可用的polyfill

  • a***@163.com (作者)

    虽然说有办法可以规避,但就renderjs里有问题,别的都正常,这说明这一块肯定有问题

    2024-10-23 10:11

1***@163.com

1***@163.com

具体该如何配置让他支持呢

要回复问题请先登录注册