問題タブ [react-loadable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Javascript: クロージャーを使用した反応ローダブルの一般化
ビューをロードするためにreact-loadableを使用しています。以下のコードは正常に動作します。
しかし、私は複数のビューを持っているので、パス文字列を変数に置き換えて上記のコードを一般化 (リファクタリング) したいと考えています。そして、そこから問題が始まります。私は次のテクニックを試しましたが、ターゲットビューをロードしません。代わりに、単に 'Loading...' 文字列を含む一時的なビューであるLoadingビューを保持します。
何か不足していますか?ありがとう。
javascript - ストリームからの JavaScript モジュールの動的インポート
目標:モジュールの名前が開発ツールで識別されたとしても、コンソール経由で正常にインポートできないなど、一部のセキュリティまたは定義されたユーザー ロール要件を条件とする Javascript モジュールの動的読み込みをサポートすること。
JavaScript モジュールは、Firebase (#AskFirebase) などのクラウド ストレージ サービスに簡単にアップロードできます。コードfirebase.functions().httpsCallable("ghost");
は、カスタム クレームまたは同様のテストの存在に基づいて、Firebase Cloud Function を使用して条件付きで取得できます。
結局やりたいことは…
...は、webpack 化された React コンポーネントをクラウドに配置し、サーバー側のセキュリティ チェック後に条件付きでクライアントにダウンロードimport()
し、ユーザーのクライアント環境にダウンロードしてレンダリングします。
Javascript をクラウドに保存し、条件付きでクライアントにダウンロードするのは簡単です。クライアントで webpack 化されたコードを取得したら、それを使用Function(downloadedRestrictedComponent)
してユーザーの環境に追加することができますimport('./RestrictedComponent')
が、理解できないのは、コンポーネントからデフォルトのエクスポートを取得して実際にレンダリングできるようにする方法です。事。
import(pathToComponent)
ロードされたモジュールを返します。私が知る限りimport()
、文字列またはストリームを渡すオプションはなく、モジュールへのパスのみです。ダウンロードしたコードをクライアント環境に追加しますが、Function(downloadedComponent)
モジュールのエクスポートにアクセスして動的にロードされた React コンポーネントをレンダリングする方法がわかりません。
ダウンロードしたストリームから Javascript モジュールを動的にインポートする方法はありますか?
追記:返信ありがとうございます。Blob と のニュアンスに慣れていませんURL.createObjectURL
。なぜこれが見つからないのでしょうか?