选择bokeh数据表行时出现JS回调问题

问题描述

我在一份简单的报告中使用了bokeh数据表,其内容如下:

source = ColumnDataSource(df)
callback = CustomJS(args=dict(callback_args),code="""some JS code""")
source.callback = callback

我有一个简单的JS代码,它将更改其他一些数据源。单击数据表的每一行都会触发它,并且效果很好。

我将bokeh升级到了2.2.1版本

现在此代码不再起作用。

似乎对于数据表,我可能需要使用以下内容

source.js_on_change('value',callback)

或者也许:

source.js_on_change('start',callback)

但是它不起作用,我得到的错误是:

Uncaught (in promise) TypeError: Cannot read property 'connect' of undefined
at f.connect
at f._update_property_callbacks 
at f.connect_signals 
at Function._initialize_references_json 

我想知道我是在做错什么还是在bokeh中有bug?

解决方法

可能是Bokeh的错误。看一下这个问题:https://github.com/bokeh/bokeh/issues/10345

,

不是错误。 ColumnDataSource既没有start属性也没有value属性。您只能为存在的属性添加回调处理程序。你可能想要

source.selected.js_on_change('indices',...)