Javascript 当I';我们在服务器中部署了

Javascript 当I';我们在服务器中部署了,javascript,angular,typescript,service-worker,progressive-web-apps,Javascript,Angular,Typescript,Service Worker,Progressive Web Apps,当我用angular/pwa构建angular项目并使用http服务器在本地服务器上进行测试时,它按预期工作。即使脱机缓存在本地也可以正常工作 但当我在服务器上部署相同的东西时,我可以在任何设备上安装和运行它,但在脱机时无法打开它 服务工作人员没有缓存pwa中的内容 这是我的app.module.ts import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core

当我用angular/pwa构建angular项目并使用http服务器在本地服务器上进行测试时,它按预期工作。即使脱机缓存在本地也可以正常工作

但当我在服务器上部署相同的东西时,我可以在任何设备上安装和运行它,但在脱机时无法打开它

服务工作人员没有缓存pwa中的内容

这是我的app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { HttpClientModule } from '@angular/common/http';

import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { GetchucknorrisjokesService } from './getchucknorrisjokes.service';
import { ServiceWorkerModule } from '@angular/service-worker';
import { environment } from '../environments/environment';

@NgModule({
  declarations: [
    AppComponent,
  ],
  imports: [
    BrowserModule,
    AppRoutingModule,
    HttpClientModule,
    ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production })
  ],
  providers: [ GetchucknorrisjokesService ],
  bootstrap: [AppComponent]
})
export class AppModule { }
这是我的ngsw-config.json文件

{
  "$schema": "./node_modules/@angular/service-worker/config/schema.json",
  "index": "/index.html",
  "assetGroups": [
    {
      "name": "app",
      "installMode": "prefetch",
      "resources": {
        "files": [
          "/favicon.ico",
          "/index.html",
          "/*.css",
          "/*.js"
        ]
      }
    }, {
      "name": "assets",
      "installMode": "lazy",
      "updateMode": "prefetch",
      "resources": {
        "files": [
          "/assets/**",
          "/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)"
        ]
      }
    }
  ]
}

通过删除$schema更新您的serivce worker,我的配置与您的相同

{
  "index": "/index.html",
  "assetGroups": [
    {
      "name": "app",
      "installMode": "prefetch",
      "resources": {
        "files": [
          "/favicon.ico",
          "/index.html",
          "/*.css",
          "/*.js"
        ]
      }
    }, {
      "name": "assets",
      "installMode": "lazy",
      "updateMode": "prefetch",
      "resources": {
        "files": [
          "/assets/**",
          "/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)"
        ]
      }
    }
  ]
}
出现此问题的原因是,当您构建到生产模式时,您的代码正在查找此文件。/node_modules/@angular/service worker/config/schema.json


因此,您的服务人员将无法工作

您可以上传您如何在模块中配置软件的代码吗?嘿@Tony Ngo我已上载app.module.tsI已删除$schema并重新加载它。现在它工作得很好