【问题标题】:Reloading Jupyter Widgets for rapid development重新加载 Jupyter 小部件以进行快速开发
【发布时间】:2020-03-29 23:15:03
【问题描述】:

我目前正在开发一个自定义 Jupyter 小部件。当我在笔记本中使用 %%javascript 魔术包含必要的 javascript 时,如果我进行更改,我可以简单地重新加载这些单元格以更新我的小部件,这对于开发来说很方便。

有没有一种方法可以使用存储在笔记本之外的 javascript 进行这种轻松的重新加载?因为现在当我想查看更改的效果时,我必须完全重新启动 Jupyter。

一个相关问题:当​​我在外部存储 javascript 时,Jupyter 仍然知道在哪里可以找到它,即使我没有明确加载它。 Jupyter 在哪里寻找自定义小部件的 javascript?

【问题讨论】:

    标签: python jupyter-notebook widget jupyter


    【解决方案1】:

    好吧,显然我在清理输出时不够勤奋,这就是为什么我得到奇怪的结果。我在下面发布我的解决方案,以防它帮助其他人。

    我的 javascript 在单独的 .js 文件中。我通过一个包含以下内容的单元格将其加载到我的笔记本中:

    from IPython.display import display, HTML
    with open("javascript.js") as f:
            data = f.read()
    text = """<div style="overflow:auto">Loading scripts</div>
    <script type="text/javascript">
    {}
    </script>""".format(data)
    display(HTML(text))
    

    这个单元的执行插入了必要的javascript。当底层 javascript 文件发生更改时,只需重新运行单元格以更新 javascript。然后当你实例化一个新的小部件时,它就会有更新的代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-06
      • 1970-01-01
      • 1970-01-01
      • 2012-12-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多