开发者社区 问答 正文

无法排除地图框路线上的轮渡,通行费或高速公路

我正在使用mapbox-gl-directions,版本:4.0.2。我想排除通行费,渡轮或高速公路。这是一个文档:API,它说您可以传递exclude参数: 但是在像这样传递参数时,它不起作用:

new MapboxDirections({
      accessToken: this.accessToken,
      unit: 'metric',
      profile: 'mapbox/driving',
      flyTo: false,
      styles,
      controls: {
        inputs: false,
        instructions: false,
        profileSwitcher: false
      },
      exclude: 'ferry'
    });

有谁知道如何通过它?

展开
收起
几许相思几点泪 2019-12-16 20:18:38 655 分享
分享
版权
举报
阿里云 AI 助理回答

在Mapbox GL Directions中正确使用exclude参数需要确保你传递的值与API所期望的格式相匹配。根据Mapbox的文档,exclude参数接受一个由逗号分隔的字符串列表,其中可以包含tolls, ferries, 和 highways等关键词来排除相应的路线类型。

你的代码示例中已经尝试了排除渡轮(ferry),但似乎没有生效。这可能是因为在版本4.0.2中处理exclude的方式有变化或者需要特定的配置。尽管我没有直接访问或测试该特定版本的能力,但基于一般指导原则,你可以尝试以下调整:

new MapboxDirections({
      accessToken: this.accessToken,
      unit: 'metric',
      profile: 'mapbox/driving',
      flyTo: false,
      styles,
      controls: {
        inputs: false,
        instructions: false,
        profileSwitcher: false
      },
      // 确保exclude是一个包含所有要排除项的字符串,用逗号分隔(即使只有一个)
      exclude: 'ferries' // 注意:如果需要排除多种类型,应写为 'tolls,ferries,highways'
    });

请确认: 1. 拼写和大小写:确保关键词正确无误,虽然通常API不区分大小写,但最好遵循文档中的示例。 2. API兼容性:检查Mapbox GL Directions 4.0.2的官方文档或更新日志,确认exclude参数是否支持以及如何正确使用。有时候,新版本的库可能对参数的使用方式有所改变。 3. 网络问题或API限制:有时请求可能因为网络问题或Mapbox API的限制未被正确处理。查看浏览器的开发者工具中的网络标签页,看是否有错误信息返回。

如果以上建议仍不能解决问题,建议查阅Mapbox的官方论坛或GitHub仓库,那里可能会有其他用户遇到过类似问题并分享了解决方案,或者直接联系Mapbox的支持获取帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答地址:
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等