185 Commits

Author SHA1 Message Date
Yugang Cao
e603fd258c
chore: fix typo (#5261) [ci skip] 2022-01-21 01:18:34 -05:00
Thorsten Lünborg
c35ec47d73
fix(runtime-core): ensure mergeProps skips undefined event handlers (#5299)
fix #5296
2022-01-21 01:13:29 -05:00
Evan You
1928c9b537 refactor: move template ref setter into dedicated file 2021-12-11 10:09:21 +08:00
Evan You
41c18effea feat: support ref in v-for, remove compat deprecation warnings 2021-12-10 23:49:01 +08:00
edison
b4eb7e3866
fix(runtime-core): improve dedupe listeners when attr fallthrough (#4912)
fix #4859
2021-11-14 22:20:38 -05:00
HcySunYang
ebd0baca98
fix(types): improve the type of createElementBlock (#4406)
fix #4391
2021-08-23 18:28:52 -04:00
Hazlank
6db15a27cf
refactor: merge bitwise flag checks (#4324) 2021-08-16 15:13:04 -04:00
AlexandraCaragata
d045055b47
fix(core): typing of key in VNodeProps (#4242)
close #4240
2021-08-06 11:11:26 -04:00
Evan You
2bdee50a59 fix(runtime-core): fix v-bind class/style merging regression
fix #4155
2021-07-20 13:58:43 -04:00
Evan You
47f488350c chore: run updated prettier 2021-07-19 18:24:18 -04:00
Evan You
2a310df753 fix(runtime-core): fix default shapeFlag for fragments 2021-07-16 14:30:49 -04:00
Evan You
8610e1c9e2 feat(runtime-dom): defineCustomElement 2021-07-16 14:30:49 -04:00
Evan You
3b64508e3b feat: v-memo 2021-07-16 14:30:49 -04:00
HcySunYang
ceff89905b perf: improve VNode creation performance with compiler hints (#3334) 2021-07-16 14:30:49 -04:00
Evan You
c0db807844 refactor: simplify static content insertion 2021-07-15 13:16:19 -04:00
Evan You
ba89ca9eca fix(runtime-dom): fix static node content caching edge cases
reverts fded1e8

fix #4023, #4031, #4037
2021-07-01 19:19:53 -04:00
Evan You
32e21333dd fix(runtime-core): stricter compat root mount check 2021-05-27 20:47:46 -04:00
HcySunYang
a641eb201f
fix(runtime-core): fix cases of reused children arrays in render functions (#3670)
fix #3666
2021-05-27 17:06:55 -04:00
Evan You
9f24195d2c fix(suspense): fix suspense patching in optimized mode
fix #3828
2021-05-27 16:32:31 -04:00
HcySunYang
e8ddf86080
fix(runtime-core): properly check forwarded slots type (#3781)
fix #3779
2021-05-26 11:52:03 -04:00
HcySunYang
201060717d
fix(runtime-core): should not track dynamic children when the user calls a compiled slot inside template expression (#3554)
fix #3548, partial fix for #3569
2021-05-25 13:33:41 -04:00
Evan You
bb76cfae12 wip: test for v-model compat 2021-04-29 16:22:39 -04:00
Evan You
86703c23a6 wip: ref v-for compat 2021-04-26 17:35:41 -04:00
Evan You
1b8f14ee76 wip: more compat progress 2021-04-21 15:09:18 -04:00
Evan You
183f9b0013 wip: component v-model compat 2021-04-09 23:10:29 -04:00
Evan You
f05d6dfd98 wip: render function compat 2021-04-09 18:56:31 -04:00
Evan You
18cf63ff05 wip: async component compat 2021-04-08 16:11:28 -04:00
Evan You
aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -05:00
Evan You
5a7a1b8293 fix(hmr): deep clone reused hoisted trees during dev
fix vitejs/vite#2022
2021-02-15 15:09:27 -05:00
Evan You
64d4681e4b fix(async-component): forward refs on async component wrapper
fix #2671
2020-11-30 18:59:14 -05:00
被雨水过滤的空气
edd49dcab4
fix(runtime-core): avoid mutating EMPTY_ARR when setting dev root (#2419)
also freeze EMPTY_ARR in dev

fix #2413
2020-10-19 18:08:54 -04:00
ᴜɴвʏтᴇ
052a621762
feat(compile-core): handle falsy dynamic args for v-on and v-bind (#2393)
fix #2388
2020-10-19 17:15:53 -04:00
Katashin
422f05e085
fix(hmr): make hmr working with class components (#2144) 2020-09-18 00:14:59 -04:00
Evan You
5ae7380b4a
feat: update Suspense usage (#2099)
See https://github.com/vuejs/vue-next/pull/2099 for details.
2020-09-15 12:45:06 -04:00
Evan You
612eb6712a fix(runtime-core/refs): handle multiple merged refs for dynamic component with vnode
fix #2078
2020-09-14 15:33:38 -04:00
Evan You
ad93fa42fc fix(runtime-core): openBlock() should not be tracked when block tracking is disabled 2020-09-02 12:30:37 -04:00
HcySunYang
5b82c48c7b
fix(runtime-core): enable block tracking when normalizing plain element with slot children (#1987)
fix #1980
2020-09-01 12:38:47 -04:00
HcySunYang
9153fc2d8a
fix(runtime-core): class and style should be properly normalized in cloneVNode (#1967)
fix #1964
2020-08-26 09:37:28 -04:00
Li Chen
0f8c9917f8
chore(runtime-core): use ReactiveFlags.SKIP in vnode for consistency (#1901) 2020-08-21 13:45:42 -04:00
Evan You
f02e2f99d9 fix(runtime-core): disable block tracking when calling compiled slot function in tempalte expressions
fix #1745, fix #1918
2020-08-21 12:47:45 -04:00
HcySunYang
7ffb79c563
fix(runtime-core): correctly track dynamic nodes in renderSlot (#1911) 2020-08-20 09:37:26 -04:00
Evan You
eb2ae44d94 refactor(types): widen Component type to include consutructor types
returned from `defineComponent`

ref: https://github.com/vuejs/vue-router-next/pull/421
also close #1880

Previous `Component` type is now exported as `ConcreteComponent`.

This introduces a minor breaking change when calling `h(comp, { ... })`
will now fail if `comp` is a of generic `Component` type, since it does
not specify what props it expects.
2020-08-19 16:19:25 -04:00
Evan You
791eff3dfb fix(runtime-core): avoid manual slot invocation in template expressions interfering with block tracking
fix #1745
2020-08-06 10:16:13 -04:00
Evan You
fbf865d9d4 fix(compiler-core): always compile Teleport and Suspense as blocks 2020-07-28 11:12:43 -04:00
Evan You
c852bf18d7 fix(v-model): v-model listeners should not fallthrough to plain element root
fix #1643
2020-07-21 14:17:48 -04:00
Evan You
1af3531719 fix(runtime-core): fix attr fallthrough on compiled framgent w/ single static element + comments 2020-07-21 13:11:19 -04:00
Evan You
6390ddfb7d fix(runtime-core): do not use bail patchFlag on cloned vnodes
fix #1665

- cloned vnodes with extra props will receive only the full props flag
- this commit affects `cloneVNode` behavior when used in manual render
  functions.
  - ok for normal elements since elements only use patchFlags for own
    props optimization
  - full props flag is skipped for fragments because fragments use
    patchFlags only for children optimization
  - this also affects `shouldUpdateComponent` where it should now only
    respect patchFlags in optimized mode, since component vnodes use
    the patchFlag for both props and slots optimization checks.
2020-07-21 13:11:19 -04:00
Evan You
03c681e396 refactor(types): move component props interfaces + expose AllowedComponentProps
fix #1632
2020-07-19 14:09:53 -04:00
Stanislav
fa5ddf8d06
chore(types): convert type literals to records (#1615) 2020-07-18 22:56:28 -04:00
HcySunYang
5d8a64d53a
feat(types): deny unknown attributes on component by default (#1614)
close #1519
2020-07-17 11:43:28 -04:00