(配置與打包)

終究還是要回到原始的版本 —— 馬丁路德.東

(一)構(gòu)建(也就是轉(zhuǎn)譯)
解決spa不能舒心的問題在跟模塊更改配置providers

@NgModule({
  declarations: [
    AppComponent,
    NavbarComponent,
    FooterComponent,
    SearchComponent,
    CarouselComponent,
    ProductComponent,
    StarsComponent,
    ProductDetailComponent,
    HomeComponent,
    FilterPipe
  ],
  imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    RouterModule.forRoot(routeConfig),
    ReactiveFormsModule
  ],
  providers: [ProductService,WebSocketService,
    {provide: LocationStrategy,useClass:HashLocationStrategy}],
  bootstrap: [AppComponent]
})

然后你npm上

ng build

(二)部署
在服務(wù)器上新建clicent文件夾
將打包好的文件放進去就行了
然后更改服務(wù)器路由配置

import * as path from 'path';
app.use('/', express.static(path.join(__dirname, '..', 'clicent')));

沒那么簡單,如果想要在本地預(yù)覽,

一個是改變index.html。的(這是我編輯器的路徑)

 <base href="http://localhost:63342/aution1/dist/">

還要把所有的http請求改為絕對路徑
放服務(wù)器的時候把base刪了。

(三)多環(huán)境
1.在angular-cli中引入不同的配置而已。
在文件的根目錄,有一個angular-cli的配置文件
其中

 "environments": {
        "source": "environments/environment.ts",
        "dev": "environments/environment.ts",
        "prod": "environments/environment.prod.ts"
      }

這是他的多環(huán)境配置文件。其中第一個source是通用配置,加新的環(huán)境就是在對象里面再加一個對象和相對應(yīng)的文件就行。(保證每一個文件里都有相同的配置參數(shù))

export const environment = {
  production: false
};

2.在代碼中引用環(huán)境變量比如main.ts中是否調(diào)用生產(chǎn)模式

if (environment.production) {
  enableProdMode();
}

3.我們可以再package.json中的更改屬性 start
為prod(看自己用哪個環(huán)境)

 "start": "ng serve --env=prod --proxy-config proxy.conf.json",

我們在控制器里面直接用environment.什么什么的就能去到自己的環(huán)境變量了。

注意在打包的時候,也要加上自己的配置參數(shù)

ng build --env=prod
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容