将布尔值从Flask传递到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,

我正在尝试使用Python的Flask和Javascript构建web地图。到目前为止,我已经设法让Flask执行一个SQL查询,返回一些坐标,然后让地图加载该位置

现在我试图控制Javascript的“可见”部分

(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,反之亦然。