Как включить дополнительную библиотеку javascript для использования моим собственным расширением jupyter notebook?

Я хотел бы написать расширение для ноутбука Jupyter, как описано здесь: https://towardsdatascience.com/how-to-write-a-jupyter-notebook-extension-a63f9578a38c

Блокнот Jupyter поставляется с набором библиотек 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

Затем я попытался бы адаптировать требуемую конфигурацию, чтобы иметь возможность загружать эти библиотеки. Тем не менее, это кажется хакерским и может вызвать проблемы с другими расширениями из-за двойной установки некоторых библиотек?

=> Каков рекомендуемый способ выполнения моих зависимостей?

редактировать

Нет необходимости изменять требуемую конфигурацию, если я использую подробные пути, начинающиеся с относительного корня "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');    
});

Мне все еще интересно, если это правильный путь.

0 ответов

Другие вопросы по тегам