hareku
643ff233af
types(reactivity): add undefined type to ref/shallowRef when no args ( #791 )
2020-03-06 11:32:39 -05:00
Evan You
3206e5dfe5
fix(types): shallowRef should not unwrap value type
2020-02-25 20:43:01 -05:00
Evan You
d4c6957e2d
fix(types): ref value type unwrapping should happen at creation time
2020-02-25 19:44:06 -05:00
Evan You
e9024bf1b7
feat(reactivity): expose unref and shallowRef
2020-02-22 04:39:32 +01:00
Evan You
775a7c2b41
refactor: preserve refs in reactive arrays
...
BREAKING CHANGE: reactive arrays no longer unwraps contained refs
When reactive arrays contain refs, especially a mix of refs and
plain values, Array prototype methods will fail to function
properly - e.g. sort() or reverse() will overwrite the ref's value
instead of moving it (see #737 ).
Ensuring correct behavior for all possible Array methods while
retaining the ref unwrapping behavior is exceedinly complicated; In
addition, even if Vue handles the built-in methods internally, it
would still break when the user attempts to use a 3rd party utility
functioon (e.g. lodash) on a reactive array containing refs.
After this commit, similar to other collection types like Map and
Set, Arrays will no longer automatically unwrap contained refs.
The usage of mixed refs and plain values in Arrays should be rare in
practice. In cases where this is necessary, the user can create a
computed property that performs the unwrapping.
2020-02-21 17:48:39 +01:00
Evan You
627b9df4a2
fix(types): improve ref typing, close #759
2020-02-21 17:45:42 +01:00
Evan You
763faac182
wip(ssr): revert reactivity ssr paths
...
The perf gains are not worth the correctness issues these paths may lead to
2020-01-27 16:00:18 -05:00
Evan You
e43f5935b5
refactor: better variable naming
2020-01-27 16:00:18 -05:00
Evan You
25a0d4a65f
wip(ssr): reduce reactivity overhead during ssr
2020-01-27 16:00:17 -05:00
likui
0c42a6d8fa
types: refactor ref unwrapping ( #646 )
2020-01-20 13:22:18 -05:00
IU
2b4d0d6501
types(reactivity): handle primitive + object intersection types in UnwrapRef ( #614 )
2020-01-16 17:47:47 -05:00
Carlos Rodrigues
985f4c91d9
types: improve isRef typing ( #578 )
2020-01-06 16:15:49 -05:00
Evan You
89a187b895
refactor(reactivity): separate track and trigger operation types
2019-12-03 11:30:24 -05:00
Evan You
61d8941692
types(reactivity): ref type should not expose _isRef
2019-11-08 13:29:43 -05:00
Carlos Rodrigues
68ad302714
types(reactivity): add support for tuples in ref unwrapping ( #436 )
2019-11-08 12:52:24 -05:00
Junyan
a02820d7e0
feat: warn when toRefs() receives non-reactive object ( #430 )
2019-11-05 10:44:28 -05:00
Evan You
f3c1fa75f6
feat(reactivity): provide correct tracking info for refs
2019-11-02 23:20:49 -04:00
Evan You
66ecd8b47f
types: setup tests for built d.ts files
2019-11-01 22:54:01 -04:00
Evan You
af57ad110f
chore: revert prettier
2019-10-22 11:53:32 -04:00
Evan You
b5886189ba
types: massive refactor
2019-10-22 11:53:32 -04:00
扩散性百万甜面包
3cd2f7e68e
types: fix ref unwrapping when nested inside arrays ( #331 )
2019-10-18 14:54:05 -04:00
Evan You
cdee65aa1b
perf: revert to _isRef for perf
...
Benchmarking shows checking for a plain property is about 4~5x faster
than checking for a Symbol, likely because the Symbol does not fit well
into V8's hidden class model.
2019-10-17 15:02:14 -04:00
Evan You
1c56d1bf19
test: test unwrapping computed refs
2019-10-14 11:21:09 -04:00
Jooger
d8b2b9eb9c
types(ref): improve UnwrapRef types ( #266 )
2019-10-14 11:02:49 -04:00
Jooger
675ce2c15d
types(reactivity): fix ref typing ( #239 )
2019-10-12 11:05:34 -04:00
Chester
e68321eac0
chore: use '' instead of undefined ( #205 )
2019-10-11 22:04:33 -04:00
相学长
cbb4b19cfb
feat(reactivity): ref(Ref) should return Ref ( #180 )
2019-10-10 11:34:42 -04:00
扩散性百万甜面包
def27239bd
type: improve typing ( #177 )
2019-10-09 14:01:53 -04:00
Andrew / Kana
c6b7afcc23
types: use recursion for unwrapping refs ( #137 )
2019-10-06 20:11:52 -04:00
Carlos Rodrigues
8d70093802
refactor(reactivity): change _isRef to use refSymbol as key ( #124 )
2019-10-06 11:46:08 -04:00
Rahul Kadyan
f58e5e96f2
types: Use unique symbol type for _isRef property of ref object ( #118 )
2019-10-05 22:32:50 -04:00
扩散性百万甜面包
0bdee72e17
feat(reactivity): use Symbol for Ref._isRef ( #114 )
2019-10-05 15:46:36 -04:00
Evan You
46bd9dbab0
perf: avoid using WeakSet for isRef check
2019-09-30 14:52:10 -04:00
Evan You
6c7cbb0dc9
types: avoid plain objects with value being mistaken as refs
2019-09-05 18:32:19 -04:00
Evan You
b218678c66
feat: toRefs
2019-08-20 09:38:00 -04:00
Evan You
6a22ad2fb2
types: simplify ref type
2019-08-18 22:48:46 -04:00
Evan You
3facfa5a55
wip: adjust computed ref type
2019-08-16 10:52:45 -04:00
Evan You
96d65e1ab5
wip: improve ref typing
2019-08-16 09:54:57 -04:00
Evan You
caba6d5c9e
wip: state -> reactive, value -> ref
2019-08-16 09:42:46 -04:00