Evan You
57ee5df364
fix(types): app.component should accept defineComponent return type
...
fix #730
2020-02-15 21:04:29 -05:00
Evan You
112d8f7d86
refactor: use explicit exports for runtime-core
2020-02-14 00:13:54 -05:00
Evan You
8cdaf28515
test(ssr): test for rendering components
2020-01-29 16:46:18 -05:00
Evan You
6b10f0cd1d
refactor: remove implicit reactive() call on renderContext
...
reference: https://github.com/vuejs/rfcs/issues/121
BREAKING CHANGE: object returned from `setup()` are no longer implicitly
passed to `reactive()`.
The renderContext is the object returned by `setup()` (or a new object
if no setup() is present). Before this change, it was implicitly passed
to `reactive()` for ref unwrapping. But this has the side effect of
unnecessary deep reactive conversion on properties that should not be
made reactive (e.g. computed return values and injected non-reactive
objects), and can lead to performance issues.
This change removes the `reactive()` call and instead performs a
shallow ref unwrapping at the render proxy level. The breaking part is
when the user returns an object with a plain property from `setup()`,
e.g. `return { count: 0 }`, this property will no longer trigger
updates when mutated by a in-template event handler. Instead, explicit
refs are required.
This also means that any objects not explicitly made reactive in
`setup()` will remain non-reactive. This can be desirable when
exposing heavy external stateful objects on `this`.
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
Evan You
da25517377
wip(ssr): initial work on server-renderer
2020-01-27 16:00:17 -05:00
Cédric Exbrayat
74baea108a
fix(types): components options should accept components defined with defineComponent ( #602 )
2020-01-13 17:12:45 -05:00
Yang Mingshan
f465199946
types: fix setup this type ( #605 )
2020-01-10 11:46:34 -05:00
Evan You
bfb0ad5a5e
types: refactor watcher types naming
2019-12-30 11:30:12 -05:00
Chris Fritz
1c4cdd841d
refactor(createComponent): rename to defineComponent ( #549 )
2019-12-22 10:58:12 -05:00
Evan You
b2c2d0590e
refactor: extract SFCInternalOptions inteface
2019-12-17 12:31:38 -05:00
Evan You
f77ae132e5
feat(hmr): reload and force slot update on re-render
2019-12-12 21:09:47 -05:00
Evan You
efe39db023
feat(runtime-core): hot module replacement
2019-12-12 21:09:47 -05:00
Evan You
5ecc77df5a
chore: fix missed save
2019-12-11 10:39:29 -05:00
Evan You
4d730f464d
refactor: move runtime compile error handling to vue
2019-12-11 10:25:34 -05:00
Evan You
d3d4fe84cd
fix(vue): properly cache runtime compilation
2019-12-11 09:46:42 -05:00
Evan You
c97d83aff2
refactor(runtime-core): tweak component proxy implementation
2019-12-10 11:14:29 -05:00
fisker Cheung
92b02dc48f
chore: comment typo ( #506 )
2019-11-28 10:01:53 +01:00
Evan You
08bf9976ae
types: ensure props are readonly
2019-11-09 18:40:25 -05:00
Evan You
dfc7c0f12a
refactor: adjust internal vnode types + more dts tests
2019-11-04 18:38:55 -05:00
Evan You
5cdeeaa702
types: fix types
2019-11-01 23:04:28 -04:00
Evan You
66ecd8b47f
types: setup tests for built d.ts files
2019-11-01 22:54:01 -04:00
Evan You
7b7b8ef221
types: improve h inference + infer required props without need for as const
2019-11-01 17:06:19 -04:00
Evan You
3a6dcd3aba
types: improve h() and TSX type inference
...
- Should allow extraneous props as attrs in TSX
- Should check props when using constructor type returned by
createComponent() in h()
2019-10-31 12:43:05 -04:00
Evan You
c6cbca25fe
feat(core): keep-alive
2019-10-29 22:28:38 -04:00
Evan You
8edfbf9df9
feat(core): adjust attrs fallthrough behavior
2019-10-25 12:12:17 -04:00
likui
532b5eebd7
feat(runtime-core): support array in watch option ( #376 )
2019-10-25 10:25:52 -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
Cr
a23e03f01e
feat(apiOptions): add warning for duplicated properties declared by options ( #329 )
2019-10-21 23:47:16 -04:00
Evan You
a25b1371ab
types: improve types
2019-10-21 23:37:03 -04:00
Dmitry Sharshakov
74d8c5919d
types: improve computed types ( #343 )
2019-10-21 13:57:20 -04:00
Dmitry Sharshakov
1f4937c2fd
types: use RenderFunction type ( #342 )
2019-10-21 13:44:01 -04:00
fisker Cheung
e5d60a0f7a
types: use hook type in options ( #284 )
2019-10-14 23:15:09 -04:00
Cr
d2bcedb213
feat(apiOptions): warn invalid computed options ( #225 )
2019-10-14 02:15:31 -04:00
Tim van den Eijnden
0177355242
fix: add warnings ( #82 )
...
* fix: add warnings
- invalid watch handler path
- attempting to mutate readonly computed value
- attempt of mutating public property
- attempt of mutating prop
* fix: more descriptive warnings + details
* fix: test apiOptions warnings
* fix: update warning in componentProxy
* fix: update warnings in componentProxy & apiOptions
* fix: update warning in componentProxy
* fix: implemented tests for componentProxy
* fix: remove comment + small refactor
2019-10-09 14:03:21 -04:00
Evan You
8da5b007b1
types: improve typing
2019-10-08 12:43:13 -04:00
Evan You
1393ee52ca
types: improve typing
2019-10-08 10:50:10 -04:00
扩散性百万甜面包
016231d09f
types: improve type for WatchHandler ( #160 )
2019-10-08 10:48:24 -04:00
Vladimir
f48a2ffc76
chore: fix typos ( #103 )
2019-10-05 10:48:54 -04:00
Carlos Rodrigues
fbabae0c0a
chore: replace some type casts and fix variable and filename typos ( #93 )
2019-10-05 10:38:02 -04:00
Evan You
d87255ce46
fix(options): data options should preserve original object if possible
2019-10-02 10:03:43 -04:00
Evan You
0f25c29119
refactor: reorganize component related code and types
2019-09-06 11:19:22 -04:00
Evan You
4c075803b5
test: test for app.mixin & warnHandler
2019-09-05 20:59:45 -04:00
Evan You
7eed0df3c2
wip: $data should only expose properties from data()
2019-09-05 20:36:35 -04:00
Evan You
94a05561f8
feat: fix all cases for h and options type inference
2019-09-05 18:48:49 -04:00
Evan You
9b90e673e8
wip: improve options typing
2019-09-05 16:09:30 -04:00
Evan You
369b9eb583
types: props validation for h
2019-09-05 11:11:33 -04:00
Evan You
81a31f79dc
feat: created/beforeCreate
2019-09-05 10:20:40 -04:00
Evan You
13298bc4fa
test: test for options API
2019-09-04 18:16:11 -04:00