You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从@turf/meta导入coordEach函数报错,求排查方案

解决@turf/meta导入coordEach时的TypeError问题

这个坑我之前踩过!大概率是Turf.js版本差异导致的导出规则变化,咱们一步步来排查解决:

1. 先确认你的Turf.js版本

Turf.js v6和v7在模块导出方式上有明显区别,这是最常见的报错原因:

  • 如果是v7.x版本:@turf/meta现在仅提供命名导出,没有默认导出。你需要用以下正确的导入方式:

    import { coordEach } from '@turf/meta';
    // 直接调用即可
    coordEach(yourGeoJSON, (coord) => {
      // 处理坐标逻辑
    });
    

    你之前的报错__WEBPACK_IMPORTED_MODULE_0__turf_meta___default.a.coordEach,说明你尝试用了默认导入(比如import meta from '@turf/meta'然后调用meta.coordEach),但v7已经移除了默认导出,所以会提示“不是函数”。

  • 如果是v6.x版本:v6同时支持命名导出和默认导出,两种写法都可行:

    // 写法1:命名导出(推荐)
    import { coordEach } from '@turf/meta';
    // 写法2:默认导出
    import meta from '@turf/meta';
    meta.coordEach(yourGeoJSON, callback);
    

2. 排查其他可能的问题

如果版本对应但还是报错,可以试试这些操作:

  • 删除node_modules目录和package-lock.json/yarn.lock文件,重新执行npm install或yarn install,排除依赖安装异常的问题。
  • 清除webpack缓存:如果是用webpack打包,可以删除项目根目录下的.webpack缓存目录,或者启动dev server时加上--no-cache参数,避免缓存的旧代码干扰。
  • 检查调用参数:确保coordEach的第一个参数是合法的GeoJSON对象,第二个是回调函数,参数格式错误也可能触发类型错误。

内容的提问来源于stack exchange,提问作者Miha Šušteršič

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:21:44