Я хотел бы написать расширение для ноутбука Jupyter, как описано здесь: https://towardsdatascience.com/how-to-write-a-jupyter-notebook-extension-a63f9578a38c
Кажется, что в блокнот Jupyter входит стандартный набор библиотек JavaScript (например, jquery, underscore, ...).Я нашел эти библиотеки в
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
Затем я попытался бы адаптировать требуемую конфигурацию, чтобы иметь возможностьзагрузить эти библиотеки.Тем не менее, это кажется странным и может вызвать проблемы с другими расширениями из-за двойной установки некоторых библиотек?
=> Каков рекомендуемый способ выполнения моих зависимостей?
edit
Нет необходимости изменять требуемую конфигурацию, если я использую подробные пути, начинающиеся с относительного корня "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');
});
Мне все еще интересно, правильный ли это путьидти.