Evan You
171cfa404f
fix(runtime-core): should not cast prop value if prop did not change
...
fix #999
2020-04-20 14:16:25 -04:00
Evan You
09b4202a22
refactor(reactivity): adjust APIs
...
BREAKING CHANGE: Reactivity APIs adjustments:
- `readonly` is now non-tracking if called on plain objects.
`lock` and `unlock` have been removed. A `readonly` proxy can no
longer be directly mutated. However, it can still wrap an already
reactive object and track changes to the source reactive object.
- `isReactive` now only returns true for proxies created by `reactive`,
or a `readonly` proxy that wraps a `reactive` proxy.
- A new utility `isProxy` is introduced, which returns true for both
reactive or readonly proxies.
- `markNonReactive` has been renamed to `markRaw`.
2020-04-15 16:45:20 -04:00
Evan You
3178504273
refactor(reactivity): make readonly non-tracking
2020-04-14 23:49:46 -04:00
Evan You
c80b857eb5
fix(runtime-core): should resolve value instead of delete for dynamic props with options
2020-04-14 16:17:35 -04:00
Evan You
7cbf684611
fix(runtime-core): fix kebab-case props update
...
fix #955
2020-04-13 12:37:31 -04:00
Evan You
c5f0f63b91
refactor(runtime-core): make setup attrs proxy dev only
2020-04-06 17:57:27 -04:00
Evan You
ec4a4c1e06
refactor(runtime-core): refactor props resolution
...
Improve performance in optimized mode + tests
2020-04-06 17:37:47 -04:00
Evan You
c7c3a6a3be
feat(runtime-core): emits validation and warnings
2020-04-03 20:40:34 -04:00
Evan You
24e9efcc21
refactor(runtime-core): extract component emit related logic into dedicated file
2020-04-03 19:08:17 -04:00
Evan You
bf473a64ea
feat(runtime-core): type and attr fallthrough support for emits option
2020-04-03 12:05:52 -04:00
Carlos Rodrigues
026eb729f3
fix(types): allow use PropType with Function ( #915 )
...
close #748
2020-04-03 09:28:13 -04:00
Evan You
b3890a93e3
fix(runtime-core): fix component proxy props presence check
...
fix #864
2020-03-21 16:25:33 -04:00
Evan You
ba9a91c48c
refactor: remove null comparisons
2020-03-18 18:14:51 -04:00
Evan You
aa4ab39c1a
refactor: separate vnode hooks and directive hooks
2020-03-18 12:30:26 -04:00
Evan You
3b282e7e3c
fix(runtime-core): fix boolean props validation
2020-03-17 10:35:32 -04:00
yang
3d38e6faf3
refactor(componentProps): extract validate prop name logic ( #825 )
2020-03-16 18:45:08 -04:00
jods
c7ae269972
fix(runtime-core): empty boolean props ( #844 )
...
close #843
2020-03-16 10:19:06 -04:00
Evan You
e1660f4338
refactor(runtime-core): adjust attr fallthrough behavior
...
BREAKING CHANGE: adjust attr fallthrough behavior
Updated per pending RFC https://github.com/vuejs/rfcs/pull/137
- Implicit fallthrough now by default only applies for a whitelist
of attributes (class, style, event listeners, a11y attributes, and
data attributes).
- Fallthrough is now applied regardless of whether the component has
explicitly declared props. (close #749 )
2020-02-28 17:53:26 -05:00
Evan You
cfadb98011
fix(runtime-core): rework vnode hooks handling
...
- peroperly support directive on components (e.g. <foo v-show="x">)
- consistently invoke raw vnode hooks on component vnodes (fix #684 )
2020-02-10 13:15:36 -05:00
Evan You
da25517377
wip(ssr): initial work on server-renderer
2020-01-27 16:00:17 -05:00
Evan You
bb6a346996
fix(runtime-core): should preserve props casing when component has no declared props
...
close #583
2020-01-06 15:05:57 -05:00
Evan You
2c3c65772b
perf: optimize props resolution
...
Store the keys for props that need default or boolean casting
during normalization, so that later we only need to iterate
through this array instead of the entire props object.
2019-12-12 22:07:48 -05:00
Evan You
a834807942
refactor: rename transition components
2019-11-24 16:00:46 -05:00
Evan You
79f23a2f77
feat(transition): support component child
2019-11-20 22:46:32 -05:00
Evan You
08bf9976ae
types: ensure props are readonly
2019-11-09 18:40:25 -05:00
Evan You
d9c6ff372c
feat(core): allow passing explicit refs via props
2019-11-06 12:51:26 -05:00
Evan You
247c53672d
refactor(reactivity): simplify effect options
2019-10-30 11:11:23 -04:00
Evan You
8edfbf9df9
feat(core): adjust attrs fallthrough behavior
2019-10-25 12:12:17 -04:00
Junyan
d76cfba7fb
refactor(reactivity): reduce code of type check ( #377 )
2019-10-25 11:15:04 -04:00
Evan You
42bf9ca3e5
feat(props): enable case conversion in all builds, preserve casing for attrs
2019-10-24 10:59:57 -04:00
Evan You
e2917fef96
feat(props): kebab -> camel prop case support in full build
2019-10-23 21:51:01 -04:00
edison
9dcbf17f3a
perf(runtime-core): use makeMap
instead of RE
( #350 )
2019-10-23 10:34:58 -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
Evan You
1393ee52ca
types: improve typing
2019-10-08 10:50:10 -04:00
Vladimir
f48a2ffc76
chore: fix typos ( #103 )
2019-10-05 10:48:54 -04:00
月迷津渡
9d6783053c
types: simplify types ( #104 )
2019-10-05 10:09:34 -04:00
Evan You
d67418002f
feat(compiler): generate patchFlags for runtime
2019-09-30 21:17:12 -04:00
Evan You
b3b67b8c7d
feat(compiler): ensure interpolation expressions are wrapped with toString()
2019-09-23 15:36:30 -04:00
Evan You
360f3b4f37
types: improve type exports
2019-09-06 12:58:31 -04:00
Evan You
891f21b010
refactor: extract hasOwn helper
2019-09-05 20:48:14 -04:00
Evan You
5a754aac81
test: test for setup()
2019-08-26 18:08:56 -04:00
Evan You
589d3c2feb
refactor: immutable -> readonly
2019-08-23 09:38:32 -04:00
Evan You
f3e9848bb2
refactor: use const enums for flags
2019-08-22 11:12:37 -04:00
Evan You
e1e4a3854c
wip: update runtime core to updated reactivity api names
2019-08-16 10:02:53 -04:00
Evan You
fce6a8fa51
wip: support returning render fn from setup() + improve createComponent type inference
2019-06-12 15:43:19 +08:00
Evan You
471899af8b
refactor: rename reactivity package name and APIs
2019-06-11 23:50:28 +08:00
Evan You
e9a3fa60d6
wip: delete keys from props proxy when needed
2019-06-05 21:38:32 +08:00
Evan You
2848f65a7f
wip: refs
2019-06-03 13:44:45 +08:00
Evan You
d6d4ba8679
wip: style/class normalization
2019-06-01 17:43:41 +08:00