Dalam Angular2, kaedah bootstrap memulakan aplikasi dan menerima komponen bersama-sama dengan tatasusunan penyedia pilihan. Artikel ini meneroka cara untuk menghantar parameter yang diperoleh daripada bahagian belakang kepada kaedah bootstrap.
Penyelesaian yang mudah melibatkan penggunaan suntikan ketergantungan Angular:
import { bootstrap } from '@angular/platform-browser-dynamic'; import { AppComponent } from "./app.component.ts"; // Retrieve headers from the server var headers = ...; // Pass headers to bootstrap method using dependency injection bootstrap(AppComponent, [{provide: 'headers', useValue: headers}]);
Dalam komponen atau perkhidmatan yang memerlukan pengepala, anda boleh menyuntiknya menggunakan @Inject penghias:
class SomeComponentOrService { constructor(@Inject('headers') private headers) {} }
Sebagai alternatif, anda boleh mencipta penyedia BaseRequestOptions tersuai:
class MyRequestOptions extends BaseRequestOptions { constructor (private headers) { super(); } } // Retrieve header values from the server var values = ...; var headers = new MyRequestOptions(values); // Pass the custom request options to the bootstrap method bootstrap(AppComponent, [{provide: BaseRequestOptions, useValue: headers}]);
Kaedah ini membolehkan anda menyediakan secara langsung yang diubah suai meminta pilihan kepada kaedah bootstrap, yang boleh berguna jika anda memerlukan lebih kawalan ke atas permintaan itu konfigurasi.
Dalam versi terbaru Angular (RC.5 dan lebih baru), anda boleh menggunakan token APP_INITIALIZER untuk melaksanakan fungsi yang memulakan konteks dan menunggu ia diselesaikan sebelum apl bootstraps.
function loadContext(context: ContextService) { return () => context.load(); } @NgModule({ ... providers: [ ..., ContextService, { provide: APP_INITIALIZER, useFactory: loadContext, deps: [ContextService], multi: true } ], })
Pendekatan ini menyediakan cara terpusat untuk memulakan konteks dan menangguhkan permulaan aplikasi sehingga data yang diperlukan tersedia.
Dengan memanfaatkan teknik ini, anda boleh menghantar parameter yang diberikan dari bahagian belakang kepada kaedah bootstrap Angular2, membolehkan anda menyuntik parameter ini ke dalam komponen dan perkhidmatan semasa fasa permulaan aplikasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melewati Parameter Render Belakang kepada Kaedah Bootstrap Sudut 2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!