Commit Graph

47 Commits

Author SHA1 Message Date
Evan You d901b6bea8 refactor(reactivity): use more efficient reactive checks
WeakSets and WeakMaps shows degrading performance as the amount of
observed objects increases. Using hidden keys result in better
performance especially when repeatedly creating large amounts of
reactive proxies.

This also makes it possible to more efficiently declare non-reactive
objects in userland.
2020-05-02 16:58:17 -04:00
Evan You 127e96a993 types: fix internal exports from @vue/shared 2020-05-01 09:19:30 -04:00
Evan You c9bf7ded2e refactor(types): mark internal API exports and exclude from d.ts
BREAKING CHANGE: Internal APIs are now excluded from type decalrations.
2020-04-30 17:04:35 -04:00
Evan You 6eb3399311 fix(runtime-dom): fix patching for attributes starting with `on`
fix #949

BREAKING CHANGE: Only props starting with `on` followed by an uppercase
letter or a non-letter character are considered event listeners.
2020-04-10 11:57:07 -04:00
Evan You c5f0f63b91 refactor(runtime-core): make setup attrs proxy dev only 2020-04-06 17:57:27 -04:00
Evan You f42d11e8e1 fix(v-model): handle dynamic assigners and array assigners
close #923
2020-04-04 20:51:42 -04:00
Evan You 583f9468fa refactor: extract remove util 2020-02-18 13:52:59 -05:00
Evan You 202532c301 chore: use consistent signature for shared utilities 2020-02-17 14:43:16 -05:00
Evan You 6df2aca070 refactor(types): move shapeFlags to shared 2020-02-14 01:36:42 -05:00
Evan You c952321fcf wip(compiler-ssr): v-model static types + textarea 2020-02-05 14:23:03 -05:00
Evan You d1eed36452 refactor(ssr): move escapeHtml to shared 2020-02-02 22:08:20 -05:00
Evan You 6f43c4b516 wip(ssr): vdom serialization 2020-01-28 18:48:27 -05:00
Evan You 012bc5df9d wip(ssr): restructure 2020-01-27 17:23:42 -05:00
Evan You 066ba82c7f wip(ssr): escape helpers 2020-01-27 16:00:18 -05:00
Evan You 2569890e31 refactor: move mockWarn utility to @vue/shared
close #652
2020-01-22 09:29:45 -05:00
Evan You 04e11187b9 perf: cache string helpers 2019-12-17 12:31:38 -05:00
Evan You d7eab51315 refactor: move dom tag config to shared
Otherwise runtime-dom cjs & esm builds will import compiler-dom
2019-11-06 15:22:46 -05:00
Evan You acbbe3298c refactor: move codeframe to @vue/shared 2019-11-06 15:13:15 -05:00
Evan You 6c7787db7b perf: use makeMap for reserved prop check 2019-10-26 11:24:37 -04:00
Junyan d76cfba7fb refactor(reactivity): reduce code of type check (#377) 2019-10-25 11:15:04 -04:00
Evan You af5a8e1154 feat(compiler-core): re-implement v-once to use cache mechanism 2019-10-23 17:57:40 -04:00
Mayness 18a349ce8c fix(reactivity): account for NaN in value change checks (#361) 2019-10-23 11:53:43 -04:00
Evan You a25b1371ab types: improve types 2019-10-21 23:37:03 -04:00
Evan You bb85aefc03 chore: move dom element config to compiler-dom 2019-10-21 16:25:16 -04:00
Evan You b5194b16bf refactor: rename vnode hooks
So that they can be used as @vnodeMounted="..." in templates
2019-10-18 14:54:35 -04:00
Dmitry Sharshakov 7305f693b1 refactor(runtime-core): extract promise check into shared (#325) 2019-10-17 15:47:26 -04:00
Ayush Goyal 58fffcb987 refactor(core): use makeMap for faster string match checks (#282) 2019-10-15 12:11:08 -04:00
Evan You 8df3e0a41e refactor: move looseEqual to vModel 2019-10-14 17:40:56 -04:00
Evan You a42ad6cc9d feat(runtime-dom): v-model directive runtime 2019-10-11 17:55:34 -04:00
月迷津渡 78f60347dc feat(compiler): add isNativeTag option for determining element type (#139) 2019-10-10 14:54:06 -04:00
Evan You 93c6aa4c90 feat: v-once
Note: only compiler transform is tested - integration with runtime
still needs to be tested.
2019-10-09 17:32:58 -04:00
Evan You bfecf2cdce refactor(compiler): use symbols for runtime helpers 2019-10-05 22:48:13 -04:00
Evan You 191db785bd refactor: use global whitelist for render proxy has check 2019-10-02 10:37:06 -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 a5c1b3283d chore: avoid object.freeze in prod 2019-09-17 16:23:29 -04:00
Evan You 891f21b010 refactor: extract hasOwn helper 2019-09-05 20:48:14 -04:00
Evan You 0f0ca4ae7c wip: vnodeXXX directive hooks 2019-08-31 17:06:39 -04:00
Evan You 966d7b5487 feat: error handling for setup / render / watch / event handlers 2019-08-30 15:05:39 -04:00
Evan You daf67397ae wip: pass attrs fallthrough tests 2019-08-22 22:07:51 -04:00
Evan You 5228f0343b wip: setup context + emit 2019-06-19 16:43:34 +08:00
Evan You 2848f65a7f wip: refs 2019-06-03 13:44:45 +08:00
Evan You 5c069eeae7 wip: scheduler, more component 2019-05-28 17:19:47 +08:00
Evan You ff9cddd46f refactor: move prop decorator into core, expose initial props to initialziers 2019-02-26 21:33:50 -05:00
Evan You 1c42c96d1a refactor: use faster key check 2018-10-17 12:20:54 -04:00
Evan You aac7805b3a refactor: use shared util, remove unused regex 2018-10-16 15:53:23 -04:00
Evan You 149d82d618 refactor: option merging + extract helper functions 2018-10-16 15:47:51 -04:00