File tree 2 files changed +33
-4
lines changed
2 files changed +33
-4
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ " ember-resources " : major
3
+ ---
4
+
5
+ The ` RemoteData ` resource now has the same state changes and semantics as ` trackedFunction ` .
6
+
7
+ Breaking Changes:
8
+
9
+ - ` isResolved ` is only true when the request succeeds. During migration, you may use ` isFinished ` for previous behavior.
Original file line number Diff line number Diff line change @@ -26,11 +26,29 @@ export class State<T = unknown> {
26
26
*/
27
27
@tracked status : null | number = null ;
28
28
29
+ /**
30
+ * True if the request has succeeded
31
+ */
32
+ @tracked isResolved = false ;
33
+
34
+ /**
35
+ * True if the request has failed
36
+ */
37
+ @tracked isRejected = false ;
38
+
29
39
/**
30
40
* true if the request has finished
31
41
*/
32
- get isResolved ( ) {
33
- return Boolean ( this . value ) || Boolean ( this . error ) ;
42
+ get isFinished ( ) {
43
+ return this . isResolved || this . isRejected ;
44
+ }
45
+
46
+ /**
47
+ * Alias for `isFinished`
48
+ * which is in turn an alias for `isResolved || isRejected`
49
+ */
50
+ get isSettled ( ) {
51
+ return this . isFinished ;
34
52
}
35
53
36
54
/**
@@ -44,14 +62,14 @@ export class State<T = unknown> {
44
62
* true if the fetch request is in progress
45
63
*/
46
64
get isLoading ( ) {
47
- return ! this . isResolved ;
65
+ return ! this . isFinished ;
48
66
}
49
67
50
68
/**
51
69
* true if the request throws an exception
52
70
*/
53
71
get isError ( ) {
54
- return Boolean ( this . error ) ;
72
+ return this . isRejected ;
55
73
}
56
74
}
57
75
@@ -110,9 +128,11 @@ export function remoteData<T = unknown>(
110
128
return response . json ( ) ;
111
129
} )
112
130
. then ( ( data ) => {
131
+ state . isResolved = true ;
113
132
state . value = data ;
114
133
} )
115
134
. catch ( ( error ) => {
135
+ state . isRejected = true ;
116
136
state . error = error ;
117
137
} )
118
138
) ;
You can’t perform that action at this time.
0 commit comments