0

ビューをロードするためにreact-loadableを使用しています。以下のコードは正常に動作します。

const Home = Loadable({
    loader: () =>
        import ('./views/home'),
    loading: Loading,
});

しかし、私は複数のビューを持っているので、パス文字列を変数に置き換えて上記のコードを一般化 (リファクタリング) したいと考えています。そして、そこから問題が始まります。私は次のテクニックを試しましたが、ターゲットビューをロードしません。代わりに、単に 'Loading...' 文字列を含む一時的なビューであるLoadingビューを保持します。

const getLoadableView = (viewPath) => {
  return Loadable({
    loader: ((p) => {
      const m = p;
      return () => {
        console.log(m); //this one prints the correct value
        return import(m);
      };
    })(viewPath),
    loading: Loading
  });
}
const Home = getLoadableView('./views/home');

何か不足していますか?ありがとう。

4

1 に答える 1