1
1
import { AsyncPipe , JsonPipe } from "@angular/common" ;
2
2
import { Component , type OnInit } from "@angular/core" ;
3
3
import { StorageMap , type JSONSchema } from "@ngx-pwa/local-storage" ;
4
- import { Observable , of } from "rxjs" ;
5
- import { catchError , mergeMap , toArray } from "rxjs/operators" ;
4
+ import { Observable , catchError , mergeMap , of , toArray } from "rxjs" ;
6
5
import { DataService } from "./data.service" ;
7
6
8
7
interface Data {
@@ -12,13 +11,16 @@ interface Data {
12
11
@Component ( {
13
12
selector : "app-root" ,
14
13
standalone : true ,
15
- imports : [ AsyncPipe , JsonPipe ] ,
14
+ imports : [
15
+ AsyncPipe ,
16
+ JsonPipe ,
17
+ ] ,
16
18
template : `
17
19
@if (getItem$ | async; as getItem) {
18
- <p id="get-item">{{getItem.title}}</p>
20
+ <p id="get-item">{{ getItem.title }}</p>
19
21
}
20
22
@if (schemaError$ | async; as schemaError) {
21
- <p id="schema-error">{{schemaError}}</p>
23
+ <p id="schema-error">{{ schemaError }}</p>
22
24
}
23
25
@if (removeItem) {
24
26
<p id="remove-item">removeItem</p>
@@ -27,7 +29,7 @@ interface Data {
27
29
<p id="clear">clear</p>
28
30
}
29
31
@if (length$ | async; as length) {
30
- <p id="length">{{length}}</p>
32
+ <p id="length">{{ length }}</p>
31
33
}
32
34
@if (keys$ | async; as keys) {
33
35
<p id="keys">{{keys | json}}</p>
@@ -36,24 +38,27 @@ interface Data {
36
38
<p id="has">has</p>
37
39
}
38
40
@if (service$ | async; as service) {
39
- <p id="service">{{service}}</p>
41
+ <p id="service">{{ service }}</p>
40
42
}
41
43
<iframe src="http://localhost:4202"></iframe>
42
44
`
43
45
} )
44
46
export class AppComponent implements OnInit {
45
47
46
- getItem$ ! : Observable < Data | undefined > ;
47
- schemaError$ ! : Observable < string | undefined > ;
48
+ getItem$ ? : Observable < Data | undefined > ;
49
+ schemaError$ ? : Observable < string | undefined > ;
48
50
removeItem = false ;
49
51
clear = false ;
50
- size$ ! : Observable < number > ;
51
- length$ ! : Observable < number > ;
52
- keys$ ! : Observable < string [ ] > ;
53
- has$ ! : Observable < boolean > ;
54
- service$ ! : Observable < string | undefined > ;
52
+ size$ ? : Observable < number > ;
53
+ length$ ? : Observable < number > ;
54
+ keys$ ? : Observable < string [ ] > ;
55
+ has$ ? : Observable < boolean > ;
56
+ service$ ? : Observable < string | undefined > ;
55
57
56
- constructor ( private readonly storageMap : StorageMap , private readonly dataService : DataService ) { }
58
+ constructor (
59
+ private readonly storageMap : StorageMap ,
60
+ private readonly dataService : DataService ,
61
+ ) { }
57
62
58
63
ngOnInit ( ) : void {
59
64
@@ -92,9 +97,11 @@ export class AppComponent implements OnInit {
92
97
mergeMap ( ( ) => this . storageMap . get ( "removeItem" , { type : "string" } ) ) ,
93
98
// eslint-disable-next-line rxjs/no-nested-subscribe
94
99
) . subscribe ( ( removeResult ) => {
100
+
95
101
if ( removeResult === undefined ) {
96
102
this . removeItem = true ;
97
103
}
104
+
98
105
} ) ;
99
106
100
107
this . length$ = this . storageMap . set ( "size1" , "test" ) . pipe (
0 commit comments