ngx-indexed-db 开源项目教程
1. 项目的目录结构及介绍
ngx-indexed-db 项目的目录结构如下:
ngx-indexed-db/
├── src/
│ ├── lib/
│ │ ├── ngx-indexed-db.module.ts
│ │ ├── ngx-indexed-db.service.ts
│ │ ├── ...
│ ├── demo/
│ │ ├── app/
│ │ │ ├── app.component.ts
│ │ │ ├── app.module.ts
│ │ │ ├── ...
│ │ ├── assets/
│ │ ├── environments/
│ │ ├── index.html
│ │ ├── main.ts
│ │ ├── ...
│ ├── index.ts
│ ├── public-api.ts
├── package.json
├── tsconfig.json
├── ...
目录结构介绍
src/lib/
:包含项目的主要代码,如ngx-indexed-db.module.ts
和ngx-indexed-db.service.ts
。src/demo/
:包含项目的演示代码,如app.component.ts
和app.module.ts
。package.json
:项目的依赖管理文件。tsconfig.json
:TypeScript 配置文件。
2. 项目的启动文件介绍
项目的启动文件位于 src/demo/main.ts
,其主要作用是引导 Angular 应用的启动。
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));
启动文件介绍
enableProdMode()
:启用生产模式。platformBrowserDynamic().bootstrapModule(AppModule)
:引导AppModule
模块启动应用。
3. 项目的配置文件介绍
项目的配置文件主要包括 tsconfig.json
和 package.json
。
tsconfig.json
tsconfig.json
文件用于配置 TypeScript 编译选项。
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
}
}
package.json
package.json
文件用于管理项目的依赖和脚本。
{
"name": "ngx-indexed-db",
"version": "5.0.0",
"description": "An angular wrapper for IndexedDB",
"author": "Charles Assunção",
"repository": {
"type": "git",
"url": "https://github.com/assuncaocharles/ngx-indexed-db.git"
},
"keywords": [
"angular",
"indexeddb",
"store",
"localstorage",
"typescript"
],
"license": "MIT",
"bugs": {
"url": "https://github.com/assuncaocharles/ngx-indexed-db/issues"
},
"homepage": "https://github.com/assuncaocharles/ngx-indexed-db#readme",
"peerDependencies": {
"@angular/common": "^12.0.0",
"@angular/core": "^12.0.0"
},
"dependencies": {
"