为什么JavaScript库未将Ipywidget中的元素作为目标

时间:2019-05-02 08:55:40

标签: javascript backbone.js ipython ipywidgets

我正在尝试创建一个包装javascript库的Ipywidget。

现在我遇到了一个问题,这使我陷入了一段时间。我在视图中导入了JavaScript库canvasXpress:Using React.lazy with TypeScript。看起来代码已加载。

但是当我尝试创建对象时,代码会运行,但是目标元素完全不受影响。

我发现这是给库一个错误的目标,但是该元素存在,即使我先创建目标元素,然后尝试在控制台中创建一个新对象也不会运行。

它应该查找元素并对其进行转换。我创建了一个独立的html网页来对其进行测试,如果我在该页面上导入了库并从控制台创建了元素,它就可以正常工作。

这里可能出什么问题了?

这是我在视图中加载的脚本:

var canvasjs = require('./canvasXpress.min-23.8.js')
var canvascss = require('./canvasXpress-23.8.css')
var widgets = require('@jupyter-widgets/base');
var _ = require('lodash');

我的观点:

var HelloView = widgets.DOMWidgetView.extend({
    render: function() {
        this.value_changed();
        this.model.on('change:value', this.value_changed, this);
        $(this.el).append("<div class='container'><canvas id='canvas' responsive='true'></canvas></div>")
    },
    value_changed: function() {
        console.log('change', this.model.get('value'))
    }
});

以前,我在视图中有新的CanvasXpress对象,但现在我只是尝试从Web控制台创建它。

new CanvasXpress('canvas', {y: {"smps":["Salihli","Tucapel","Sabadell"], "data":[[5,2,4]], "vars":["intval"]}, x: {"cities":["Salihli","Tucapel","Sabadell"]}, z: null}, false, false)

0 个答案:

没有答案