Angular 在前端代码库中共享main.ts文件以服务于web和移动客户端
我正在尝试为基于angular2的前端应用程序设计一个合适的文件夹和代码结构,该应用程序将包含用于Android/iOS视图的nativescript部分,以及用于Web浏览器频道的常规DOM内容 从NativeScript样板文件开始,我最终得到一个Angular 在前端代码库中共享main.ts文件以服务于web和移动客户端,angular,typescript,nativescript,angular-cli,Angular,Typescript,Nativescript,Angular Cli,我正在尝试为基于angular2的前端应用程序设计一个合适的文件夹和代码结构,该应用程序将包含用于Android/iOS视图的nativescript部分,以及用于Web浏览器频道的常规DOM内容 从NativeScript样板文件开始,我最终得到一个main.ts文件,该文件如下所示: import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core"; import { platformNativeScriptDynamic } from "
main.ts
文件,该文件如下所示:
import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core";
import { platformNativeScriptDynamic } from "nativescript-angular/platform";
import { NativeScriptModule } from "nativescript-angular/nativescript.module";
import { AppComponent } from "./app.component";
@NgModule({
declarations: [AppComponent],
bootstrap: [AppComponent],
imports: [NativeScriptModule],
schemas: [NO_ERRORS_SCHEMA]
})
export class AppModule {}
platformNativeScriptDynamic().bootstrapModule(AppModule);
你看,
platformNativeScriptDynamic
直接使这个文件非常、非常有见解,而不是常规的platformBrowserDynamic
。由于我只想为所有频道使用一个根文件夹(这样我就可以共享模型和服务),我如何设计main.ts
文件(或我需要的任何其他文件),以便一方面,ng serve
知道去哪里,另一方面,运行android的tns也知道如何运行移动应用程序?这种方法似乎很复杂。我认为它可以使用environment.ts
和--environment
命令行选项工作,但是我发现(并且更喜欢)一个插件可以在内部处理所有这些:
缺点是它将nativescript插入ng2 cli项目。我想,如果你想做相反的事情,你就得稍微摆弄一下。不同的平台应该有不同的主文件,我想就这么简单。