我想编写一个 Jupyter Notebook Extension,如下所述: https ://towardsdatascience.com/how-to-write-a-jupyter-notebook-extension-a63f9578a38c
Jupyter notebook 似乎带有一组默认的 JavaScript 库(例如 jquery、下划线,...)。我在下面找到了那些库
python-3.7.1.amd64\Lib\site-packages\notebook\static\components
我的笔记本扩展需要更多的库,例如 Golden-layout.js 和 d3.js。
=>是否可以定义额外的 JavaScript 库,在安装我的扩展程序时将安装到上述组件文件夹中?
作为一种解决方法,我可以将库复制到我的自定义扩展文件夹的子文件夹“bower_components”,例如
python-3.7.1.amd64\Lib\site-packages\jupyter_contrib_nbextensions\nbextensions\my_extension_folder\bower_components
然后我会尝试调整 require 配置以便能够加载这些库。但是,这似乎是 hacky 并且可能由于某些库的双重安装而导致其他扩展出现问题?
=>满足我的依赖关系的推荐方法是什么?
编辑
如果我使用以相对根“nbextensions”开头的详细路径,则无需更改要求配置:
require([
'nbextensions/my_extension_folder/bower_components/golden-layout/dist/goldenlayout.min',
'nbextensions/my_extension_folder/bower_components/d3/d3.min'
], function(
GoldenLayout,
d3
) {
alert('foo');
});
我仍然想知道这是否是正确的方法。