Динамический импорт библиотеки next.js

Я пытаюсь динамически импортировать библиотеку в один из моих проектов next.js. Когда я пытаюсь импортировать это, я не получаю экспорт по умолчанию из библиотеки, как ожидалось. Во-первых, я попробовал следующий способ:

import dynamic from "next/dynamic";
const ConnectionReroutePlugin = dynamic(() => import('rete-connection-reroute-plugin'), { ssr: false });

Затем я попробовал отреагировать следующим образом:

const ConnectionReroutePlugin = React.lazy(() => import('rete-connection-reroute-plugin'));

Я вижу следующую ошибку импорта:

Необработанное отклонение (TypeError): plugin.install не является функцией

Кто-нибудь может указать, что я делаю не так и как мне это импортировать?


person Muhammad Zeeshan    schedule 12.03.2020    source источник
comment
Почему бы тебе просто не import ConnectionReroutePlugin from 'rete-connection-reroute-plugin'?   -  person bcjohn    schedule 12.03.2020
comment
На самом деле это не мой вопрос.   -  person Muhammad Zeeshan    schedule 12.03.2020
comment
Попробуйте использовать .default для импорта экспорта по умолчанию, например. const lib = ожидание импорта ('путь / к / lib'). по умолчанию   -  person jacobedawson    schedule 15.10.2020


Ответы (2)


Думаю, проблема в том, что вам нужно передать импорт в качестве загрузчика. как после

const ConnectionReroutePlugin = dynamic({
  loader: () => import("rete-connection-reroute-plugin"),
  ssr: false
});
person Sodhi saab    schedule 12.03.2020
comment
Спасибо за ответ, но у меня это не работает. - person Muhammad Zeeshan; 12.03.2020

Вы можете сделать что-то вроде этого

var script = document.createElement('script');
script.onload = function () {
 // do something here
};
script.src = something;

document.head.appendChild(script);
person AJAY    schedule 12.03.2020
comment
Спасибо за подход. Но я ищу способ реагировать, а не ванильный javascript. - person Muhammad Zeeshan; 12.03.2020