自定义传单路由错误(选项)

Customize leaflet routing error (options)

我正在使用 Leaflet-routing-machine,

我像这样将错误控件添加到我的地图中:

L.Routing.errorControl(this.control).addTo(map);

我使用的风格是:

.leaflet-routing-error {
  width: 320px;
  background-color: rgb(238, 153, 164);
  padding-top: 4px;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

这是我得到的:

我没有找到很多解释。有谁知道如何更多地自定义它,更改语言,hide/show...?

阅读本文后source code 您可以重新定义 headerfromat message 函数

L.Routing.errorControl(control, {
            header: 'Routing error',
            formatMessage(error) {
                if (error.status < 0) {
                    return 'Calculating the route caused an error. Technical description follows:  <code><pre>' +
                        error.message + '</pre></code';
                } else {
                    return 'The route could not be calculated. ' +
                        error.message;
                }
            }
        }).addTo(map);

相信在你的控制下你可以重新定义这两个选项

你也可以使用带有 classes leaflet-bar leaflet-routing-error 的 leaflet 元素并注入更多 html 代码就像他们创建警报一样

var L = require('leaflet');

        onAdd: function() {
            var header,
                message;

            this._element = L.DomUtil.create('div', 'leaflet-bar leaflet-routing-error');
            this._element.style.visibility = 'hidden';

            header = L.DomUtil.create('h3', null, this._element);
            message = L.DomUtil.create('span', null, this._element);

            header.innerHTML = this.options.header;

            return this._element;
        }

所以检索 class 或 ID leaflet-routing-errordiv 并在其上注入你想要的 html 组件模板应该没问题