自定义传单路由错误(选项)
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
您可以重新定义 header 和 fromat 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-error
的 div
并在其上注入你想要的 html 组件模板应该没问题
我正在使用 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 您可以重新定义 header 和 fromat 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-error
的 div
并在其上注入你想要的 html 组件模板应该没问题