Angular 8 Web Worker 和 Service Worker 示例教程
ng-webworker ng-webworker creates dynamic webworkers so angular apps can be multi-threaded. 项目地址:https://gitcode.com/gh_mirrors/ng/ng-webworker
1. 项目的目录结构及介绍
ng-webworker/
├── e2e/
│ ├── src/
│ │ ├── app.e2e-spec.ts
│ │ └── app.po.ts
│ ├── protractor.conf.js
│ └── tsconfig.e2e.json
├── src/
│ ├── app/
│ │ ├── app.component.css
│ │ ├── app.component.html
│ │ ├── app.component.spec.ts
│ │ ├── app.component.ts
│ │ └── app.module.ts
│ ├── assets/
│ ├── environments/
│ │ ├── environment.prod.ts
│ │ └── environment.ts
│ ├── favicon.ico
│ ├── index.html
│ ├── main.ts
│ ├── polyfills.ts
│ ├── styles.css
│ ├── test.ts
│ ├── tsconfig.app.json
│ └── tsconfig.spec.json
├── angular.json
├── package.json
├── tsconfig.json
└── tslint.json
目录结构介绍
e2e/ : 端到端测试目录,包含测试配置和测试文件。src/ : 源代码目录,包含应用程序的所有源文件。
app/ : 应用程序的主要代码目录,包含组件、模块等。assets/ : 静态资源目录,如图片等。environments/ : 环境配置目录,包含开发和生产环境的配置文件。index.html : 应用程序的入口HTML文件。main.ts : 应用程序的入口TypeScript文件。polyfills.ts : 用于填充浏览器兼容性的脚本。styles.css : 全局样式文件。test.ts : 测试配置文件。 angular.json : Angular CLI 配置文件。package.json : 项目依赖和脚本配置文件。tsconfig.json : TypeScript 编译配置文件。tslint.json : 代码风格检查配置文件。
2. 项目的启动文件介绍
main.ts
import { enableProdMode } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app/app.module';
import { environment } from './environments/environment';
if (environment.production) {
enableProdMode();
}
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.error(err));
文件介绍
main.ts : 这是Angular应用程序的入口文件。它负责启动应用程序并引导根模块AppModule
。enableProdMode() : 在生产环境中启用生产模式,以提高性能。platformBrowserDynamic() : 使用JIT(即时编译)方式启动Angular应用程序。bootstrapModule(AppModule) : 引导根模块AppModule
,启动整个应用程序。
3. 项目的配置文件介绍
angular.json
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"ng-webworker": {
"projectType": "application",
"schematics": {},
"root": "",
"sourceRoot": "src",
"prefix": "app",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/ng-webworker",
"index": "src/index.html",
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.app.json",
"aot": true,
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
],
"scripts": []
},
ng-webworker ng-webworker creates dynamic webworkers so angular apps can be multi-threaded. 项目地址:https://gitcode.com/gh_mirrors/ng/ng-webworker