問題タブ [angular-seed]
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.
angular - 読み込みが完了する前に HTML からパラメーターを取得する
Seed に基づく Angular アプリケーションがあります。何かを表示する前に、すべてのデータが読み込まれるのを待ちたいと思います。これは、 my のプロバイダーで行われますapp.module.ts
。
問題は、config.load
(最終的に を起動するresolve(true)
) が、サーバーによって HTML ページで指定された ID を必要とすることです。
このパラメーターを取得するために私が見つけた唯一の方法は、app.component
のコンストラクターにあります。
問題は、このコンストラクターが初期化後にのみ呼び出されることです。
したがって、私は時系列で次のいずれかを持っています。
config.load()
- 「読み込んでいます...」が消える
app.component
のコンストラクターが呼び出され、ID を取得しましたが、遅すぎますconfig.load
または、APP_INITIALIZER を削除config.load()
してコンポーネントのコンストラクターに配置すると、次のようになります。
- 「読み込んでいます...」が消える
app.component
のコンストラクターが呼び出され、ID を取得しますconfig.load()
コンストラクターから手動で呼び出される
構成が実際にロードされる前にアプリケーションが表示されることを意味するため、これは望ましくありません。
angular - karma TypeError "未定義のプロパティ 'subscribe' を読み取れません"
共有サービスを持つ単純なコンポーネントをテストしているときに、次のエラー メッセージが表示され、それを機能させることができません。すべてを試しました。
TypeError: 未定義のプロパティ 'subscribe' を読み取れません
lr.component.ts
lr.service.ts
any-random.component.ts
lr.component.spec.ts
エラー
ノート:
Angular テスト フレームワークを使用せずに Jasmineのみを使用すると、機能します。しかし、それは私がテストしたい方法ではありません@Component
。
例:
これは機能しますが、私が望むものではありません。
この問題を解決する方法の手がかりはありますか? 私は本当に多くのことを試しましたが、どれもうまくいきませんでした...