将布尔值从Flask传递到Javascript
我正在尝试使用Python的Flask和Javascript构建web地图。到目前为止,我已经设法让Flask执行一个SQL查询,返回一些坐标,然后让地图加载该位置 现在我试图控制Javascript的“可见”部分将布尔值从Flask传递到Javascript,javascript,flask,Javascript,Flask,我正在尝试使用Python的Flask和Javascript构建web地图。到目前为止,我已经设法让Flask执行一个SQL查询,返回一些坐标,然后让地图加载该位置 现在我试图控制Javascript的“可见”部分 (function (w) { var map = new ol.Map({ layers: [ new ol.layer.Tile({ title: 'Water color', visible: true,
(function (w) {
var map = new ol.Map({
layers: [
new ol.layer.Tile({
title: 'Water color',
visible: true,
}),
new ol.layer.Tile({
title: 'OSM',
visible: false,
}),
],
target: 'map',
view: new ol.View({
center: ol.proj.transform(w.latLon),
})
});
}(window));
那能做到吗?坐标通过w.latLon传入。将visible:true、
替换为visible:w.OSM
并将OSM
设置为字符串true
似乎无法实现此目的 我有两个问题。
1) 我未能在模板中声明变量
2) 我不得不使用这个tojson设备来阻止它仅仅传递一个字符串,这是真的
所以,在我的html模板中
OSM = {{ OSM|tojson }}
在javascript中
visible : w.OSM,
使用
1
和0
作为布尔替换是否会起作用?好主意,但对我来说不起作用。设置为0、1、0或1时,其行为始终为true。有趣的是(对于像我这样的新手来说),当我硬编码1和0时,它们是如何表现为true和false的。也许可以添加一个中间函数,将Flask输出解析为JavaScript,反之亦然。