mirror of https://github.com/vuejs/vue.git
Compare commits
12 Commits
v2.7.16-be
...
main
| Author | SHA1 | Date |
|---|---|---|
|
|
9e88707940 | |
|
|
73486cb5f5 | |
|
|
e428d89145 | |
|
|
bed04a77e5 | |
|
|
0191d50c31 | |
|
|
cdcc4f0c66 | |
|
|
13f4e7dc03 | |
|
|
56ce7f8c57 | |
|
|
305e4ae9dc | |
|
|
3e1037e4a0 | |
|
|
db9c566032 | |
|
|
895669ffa0 |
|
|
@ -1,11 +1,8 @@
|
|||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Create new issue
|
||||
url: https://new-issue.vuejs.org/
|
||||
about: Please use the following link to create a new issue.
|
||||
- name: Patreon
|
||||
url: https://www.patreon.com/evanyou
|
||||
about: Love Vue.js? Please consider supporting us via Patreon.
|
||||
- name: Open Collective
|
||||
url: https://opencollective.com/vuejs/donate
|
||||
about: Love Vue.js? Please consider supporting us via Open Collective.
|
||||
- name: Vue 2 has reached EOL!
|
||||
url: https://v2.vuejs.org/eol/
|
||||
about: Vue 2 has reached EOL and is no longer actively maintained. Click the link on the right for more details.
|
||||
- name: Vue 2 NES by HeroDevs
|
||||
url: https://www.herodevs.com/support/nes-vue?utm_source=vuejs-github&utm_medium=issue-form
|
||||
about: Learn more about Vue 2 NES if you have security or compliance requirements for continued Vue 2 usage.
|
||||
|
|
|
|||
31
CHANGELOG.md
31
CHANGELOG.md
|
|
@ -1,3 +1,22 @@
|
|||
## [2.7.16 Swan Song](https://github.com/vuejs/vue/compare/v2.7.16-beta.2...v2.7.16) (2023-12-24)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **lifecycle:** ensure component effect scopes are disconnected ([56ce7f8](https://github.com/vuejs/vue/commit/56ce7f8c573116ed6683149206cf35c987249d42)), closes [#13134](https://github.com/vuejs/vue/issues/13134)
|
||||
|
||||
|
||||
|
||||
## [2.7.16-beta.2](https://github.com/vuejs/vue/compare/v2.7.16-beta.1...v2.7.16-beta.2) (2023-12-14)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* account for nested render calls ([db9c566](https://github.com/vuejs/vue/commit/db9c566032da0ec5cd758a3e8525e9733874c1e5)), closes [#13131](https://github.com/vuejs/vue/issues/13131)
|
||||
* **types:** export more types for v3 alignment (jsx / component options) ([895669f](https://github.com/vuejs/vue/commit/895669ffa01f8075a326308caa8ad6a5f69a1919)), closes [#13078](https://github.com/vuejs/vue/issues/13078) [#13128](https://github.com/vuejs/vue/issues/13128)
|
||||
|
||||
|
||||
|
||||
## [2.7.16-beta.1](https://github.com/vuejs/vue/compare/v2.7.15...v2.7.16-beta.1) (2023-12-08)
|
||||
|
||||
|
||||
|
|
@ -687,7 +706,7 @@ In addition:
|
|||
- should consider presence of normal slots when caching normalized scoped slots ([9313cf9](https://github.com/vuejs/vue/commit/9313cf91740e1d43c43cf9e73d905dbab913beb5)), closes [#9644](https://github.com/vuejs/vue/issues/9644)
|
||||
- should not swallow user catch on rejected promise in methods ([7186940](https://github.com/vuejs/vue/commit/7186940143704acc4ec046132f6a56e9c983e510)), closes [#9694](https://github.com/vuejs/vue/issues/9694)
|
||||
- should use fallback for scoped slots with single falsy v-if ([781c705](https://github.com/vuejs/vue/commit/781c70514e01bc402828946805bfad7437c7175e)), closes [#9658](https://github.com/vuejs/vue/issues/9658)
|
||||
- **ssr:** fix nested async functional componet rendering ([#9673](https://github.com/vuejs/vue/issues/9673)) ([8082d2f](https://github.com/vuejs/vue/commit/8082d2f910d963f14c151fb445e0fcc5c975cca9)), closes [#9643](https://github.com/vuejs/vue/issues/9643)
|
||||
- **ssr:** fix nested async functional component rendering ([#9673](https://github.com/vuejs/vue/issues/9673)) ([8082d2f](https://github.com/vuejs/vue/commit/8082d2f910d963f14c151fb445e0fcc5c975cca9)), closes [#9643](https://github.com/vuejs/vue/issues/9643)
|
||||
- **ssr:** not push non-async css files into map ([#9677](https://github.com/vuejs/vue/issues/9677)) ([d282400](https://github.com/vuejs/vue/commit/d28240009c4c49fb2ef42a79206f0d9ad03f736c))
|
||||
- **transition:** fix appear check for transition wrapper components ([#9668](https://github.com/vuejs/vue/issues/9668)) ([4de4649](https://github.com/vuejs/vue/commit/4de4649d9637262a9b007720b59f80ac72a5620c))
|
||||
- v-bind object should be overridable by single bindings ([#9653](https://github.com/vuejs/vue/issues/9653)) ([0b57380](https://github.com/vuejs/vue/commit/0b57380f10986c6b07e3c240acc06bfd2eddfd1b)), closes [#9641](https://github.com/vuejs/vue/issues/9641)
|
||||
|
|
@ -890,7 +909,7 @@ In addition:
|
|||
- fix single v-for child optimization ([847e493](https://github.com/vuejs/vue/commit/847e493768371cec4718969e02bdb7f8463f4e03))
|
||||
- fix v-for component with undefined value ([4748760](https://github.com/vuejs/vue/commit/47487607fbb99339038cf84990ba341c25b5e20d)), closes [#9181](https://github.com/vuejs/vue/issues/9181)
|
||||
- **lifecycle:** beforeUpdated should not be called if component is destroyed ([#9171](https://github.com/vuejs/vue/issues/9171)) ([87bad80](https://github.com/vuejs/vue/commit/87bad80f0cb9a30b95d9410120ff6e3e2022a723)), closes [#8076](https://github.com/vuejs/vue/issues/8076)
|
||||
- **types:** accept primatives and falsy values in createElement children ([#9154](https://github.com/vuejs/vue/issues/9154)) ([d780dd2](https://github.com/vuejs/vue/commit/d780dd2e2adcf71f40c086055a659a9a2b4a8282)), closes [#8498](https://github.com/vuejs/vue/issues/8498)
|
||||
- **types:** accept primitive and falsy values in createElement children ([#9154](https://github.com/vuejs/vue/issues/9154)) ([d780dd2](https://github.com/vuejs/vue/commit/d780dd2e2adcf71f40c086055a659a9a2b4a8282)), closes [#8498](https://github.com/vuejs/vue/issues/8498)
|
||||
- **v-model:** properly handle multiline v-model expressions ([#9184](https://github.com/vuejs/vue/issues/9184)) ([3d44937](https://github.com/vuejs/vue/commit/3d449376d557c4533a9664f95df3a168ecee9bfa)), closes [#9183](https://github.com/vuejs/vue/issues/9183)
|
||||
- **weex:** support data class type that is string ([#9139](https://github.com/vuejs/vue/issues/9139)) ([d8285c5](https://github.com/vuejs/vue/commit/d8285c57a613c42eddf2d4f2b75c1cea6aa4703a)), closes [#9124](https://github.com/vuejs/vue/issues/9124)
|
||||
|
||||
|
|
@ -999,7 +1018,7 @@ In addition:
|
|||
- beforeUpdate should be called before render and allow state mutation ([#7822](https://github.com/vuejs/vue/issues/7822)) ([b7445a2](https://github.com/vuejs/vue/commit/b7445a2b945dcded287601ace8e711ab5cf35ab5)), closes [#7481](https://github.com/vuejs/vue/issues/7481)
|
||||
- **codegen:** support IE11 and Edge use of "Esc" key ([#7887](https://github.com/vuejs/vue/issues/7887)) ([1bd6196](https://github.com/vuejs/vue/commit/1bd6196fb234c28754d9a27095afe0b5b84990ad)), closes [#7880](https://github.com/vuejs/vue/issues/7880)
|
||||
- correct the `has` implementation in the `_renderProxy` ([#7878](https://github.com/vuejs/vue/issues/7878)) ([7b38739](https://github.com/vuejs/vue/commit/7b387390aa917edffc0eabce0b4186ea1ef40e2c))
|
||||
- ensure init/prepatch hooks are still repsected ([de42278](https://github.com/vuejs/vue/commit/de42278d34f6a800cec5c7eb781c1b8b83a829dd)), closes [vue-router#1338](https://github.com/vue-router/issues/1338)
|
||||
- ensure init/prepatch hooks are still respected ([de42278](https://github.com/vuejs/vue/commit/de42278d34f6a800cec5c7eb781c1b8b83a829dd)), closes [vue-router#1338](https://github.com/vue-router/issues/1338)
|
||||
- invoke component node create hooks before insertion ([#7823](https://github.com/vuejs/vue/issues/7823)) ([f43ce3a](https://github.com/vuejs/vue/commit/f43ce3a5d8f73e273f2d03c9d86ea5662cda481a)), closes [#7531](https://github.com/vuejs/vue/issues/7531)
|
||||
- **observer:** invoke getters on initial observation if setter defined ([#7828](https://github.com/vuejs/vue/issues/7828)) ([7a145d8](https://github.com/vuejs/vue/commit/7a145d86430bad65271f4d6ab1344b215fefe52a))
|
||||
|
||||
|
|
@ -1030,7 +1049,7 @@ In addition:
|
|||
|
||||
### Bug Fixes
|
||||
|
||||
- do not traverse VNodes when regsitering dependencies ([84a9a9d](https://github.com/vuejs/vue/commit/84a9a9d61057f6f40a9ad2bee456b39ef0a8f001)), closes [#7786](https://github.com/vuejs/vue/issues/7786)
|
||||
- do not traverse VNodes when registering dependencies ([84a9a9d](https://github.com/vuejs/vue/commit/84a9a9d61057f6f40a9ad2bee456b39ef0a8f001)), closes [#7786](https://github.com/vuejs/vue/issues/7786)
|
||||
|
||||
## [2.5.14](https://github.com/vuejs/vue/compare/v2.5.13...v2.5.14) (2018-03-09)
|
||||
|
||||
|
|
@ -1295,7 +1314,7 @@ In addition:
|
|||
- support denoting normal elements as scoped slot ([dae173d](https://github.com/vuejs/vue/commit/dae173d96d15f47de6ce6961354d5c05e4273005))
|
||||
- support RegExp in ignoredElements ([#6769](https://github.com/vuejs/vue/issues/6769)) ([795b908](https://github.com/vuejs/vue/commit/795b908095b29e76435479879c1ade7ef759ce7b))
|
||||
- **types:** further improve Vue type declarations for canonical usage ([#6391](https://github.com/vuejs/vue/issues/6391)) ([db138e2](https://github.com/vuejs/vue/commit/db138e2254d71f6b96e033acf66ba43ad269841a))
|
||||
- **v-model:** craete non-existent properties as reactive ([e1da0d5](https://github.com/vuejs/vue/commit/e1da0d585c797860533d6cb10ea3d09c7fb711fc)), closes [#5932](https://github.com/vuejs/vue/issues/5932)
|
||||
- **v-model:** create non-existent properties as reactive ([e1da0d5](https://github.com/vuejs/vue/commit/e1da0d585c797860533d6cb10ea3d09c7fb711fc)), closes [#5932](https://github.com/vuejs/vue/issues/5932)
|
||||
- **v-model:** support dynamic input type binding ([f3fe012](https://github.com/vuejs/vue/commit/f3fe012d5499f607656b152ce5fcb506c641f9f4))
|
||||
- v-on automatic key inference ([4987eeb](https://github.com/vuejs/vue/commit/4987eeb3a734a16a4978d1061f73039002d351e6))
|
||||
|
||||
|
|
@ -1367,7 +1386,7 @@ In addition:
|
|||
|
||||
- checkbox v-model="array" ignore false-value ([#6180](https://github.com/vuejs/vue/issues/6180)) ([3d14e85](https://github.com/vuejs/vue/commit/3d14e855e422b656859d1b419af43b94320fcfce)), closes [#6178](https://github.com/vuejs/vue/issues/6178)
|
||||
- **compile:** properly generate comments with special character ([#6156](https://github.com/vuejs/vue/issues/6156)) ([d03fa26](https://github.com/vuejs/vue/commit/d03fa26687605a43d9a0c3f395d1d32375f7eaee)), closes [#6150](https://github.com/vuejs/vue/issues/6150)
|
||||
- ensure looseEqual is not dependant on key enumeration order ([a8ac129](https://github.com/vuejs/vue/commit/a8ac129a5876a7eeae0137bf2f1b0968d4d6ffad)), closes [#5908](https://github.com/vuejs/vue/issues/5908)
|
||||
- ensure looseEqual is not dependent on key enumeration order ([a8ac129](https://github.com/vuejs/vue/commit/a8ac129a5876a7eeae0137bf2f1b0968d4d6ffad)), closes [#5908](https://github.com/vuejs/vue/issues/5908)
|
||||
- include boolean in isPrimitive check ([#6127](https://github.com/vuejs/vue/issues/6127)) ([be3dc9c](https://github.com/vuejs/vue/commit/be3dc9c6e923248bcf81eb8240dd4f3c168fac59)), closes [#6126](https://github.com/vuejs/vue/issues/6126)
|
||||
- **parser:** only ignore the first newline in `<pre>` ([082fc39](https://github.com/vuejs/vue/commit/082fc3967db4d3290e901a38504dcd9bb698e561)), closes [#6146](https://github.com/vuejs/vue/issues/6146)
|
||||
- **provide/inject:** merge provide properly from mixins ([3036551](https://github.com/vuejs/vue/commit/303655116f8ec78f3b0ac99569637ad868dfe246)), closes [#6175](https://github.com/vuejs/vue/issues/6175)
|
||||
|
|
|
|||
14
README.md
14
README.md
|
|
@ -1,3 +1,11 @@
|
|||
## Vue 2 has reached End of Life
|
||||
|
||||
**You are looking at the now inactive repository for Vue 2. The actively maintained repository for the latest version of Vue is [vuejs/core](https://github.com/vuejs/core).**
|
||||
|
||||
Vue has reached End of Life on December 31st, 2023. It no longer receives new features, updates, or fixes. However, it is still available on all existing distribution channels (CDNs, package managers, Github, etc).
|
||||
|
||||
If you are starting a new project, please start with the latest version of Vue (3.x). We also strongly recommend current Vue 2 users to upgrade ([guide](https://v3-migration.vuejs.org/)), but we also acknowledge that not all users have the bandwidth or incentive to do so. If you have to stay on Vue 2 but also have compliance or security requirements about unmaintained software, check out [Vue 2 NES](https://www.herodevs.com/support/nes-vue?utm_source=vuejs-github&utm_medium=vue2-readme).
|
||||
|
||||
<p align="center"><a href="https://vuejs.org" target="_blank" rel="noopener noreferrer"><img width="100" src="https://vuejs.org/images/logo.png" alt="Vue logo"></a></p>
|
||||
|
||||
<p align="center">
|
||||
|
|
@ -9,10 +17,6 @@
|
|||
<a href="https://chat.vuejs.org/"><img src="https://img.shields.io/badge/chat-on%20discord-7289da.svg?sanitize=true" alt="Chat"></a>
|
||||
</p>
|
||||
|
||||
## This repo is for Vue 2
|
||||
|
||||
You are looking at the repository for Vue 2. The repo for Vue 3 is [vuejs/core](https://github.com/vuejs/core).
|
||||
|
||||
## Sponsors
|
||||
|
||||
Vue.js is an MIT-licensed open source project with its ongoing development made possible entirely by the support of these awesome [backers](https://github.com/vuejs/core/blob/main/BACKERS.md). If you'd like to join them, please consider [ sponsor Vue's development](https://vuejs.org/sponsor/).
|
||||
|
|
@ -41,7 +45,7 @@ Vue (pronounced `/vjuː/`, like view) is a **progressive framework** for buildin
|
|||
|
||||
#### Browser Compatibility
|
||||
|
||||
Vue.js supports all browsers that are [ES5-compliant](https://kangax.github.io/compat-table/es5/) (IE8 and below are not supported).
|
||||
Vue.js supports all browsers that are [ES5-compliant](https://compat-table.github.io/compat-table/es5/) (IE8 and below are not supported).
|
||||
|
||||
## Ecosystem
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "vue",
|
||||
"version": "2.7.16-beta.1",
|
||||
"version": "2.7.16",
|
||||
"packageManager": "pnpm@8.9.2",
|
||||
"description": "Reactive, component-oriented view layer for modern web interfaces.",
|
||||
"main": "dist/vue.runtime.common.js",
|
||||
|
|
@ -130,7 +130,7 @@
|
|||
"ts-node": "^10.8.1",
|
||||
"tslib": "^2.4.0",
|
||||
"typescript": "^4.8.4",
|
||||
"vitest": "^1.0.0",
|
||||
"vitest": "^1.0.4",
|
||||
"yorkie": "^2.0.0"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@vue/compiler-sfc",
|
||||
"version": "2.7.16-beta.1",
|
||||
"version": "2.7.16",
|
||||
"description": "compiler-sfc for Vue 2",
|
||||
"main": "dist/compiler-sfc.js",
|
||||
"types": "dist/compiler-sfc.d.ts",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "vue-server-renderer",
|
||||
"version": "2.7.16-beta.1",
|
||||
"version": "2.7.16",
|
||||
"description": "server renderer for Vue 2.0",
|
||||
"main": "index.js",
|
||||
"types": "types/index.d.ts",
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ This is only useful at runtime with pre-configured builds, so it doesn't accept
|
|||
|
||||
Same as `compiler.compile` but generates SSR-specific render function code by optimizing parts of the template into string concatenation in order to improve SSR performance.
|
||||
|
||||
This is used by default in `vue-loader@>=12` and can be disabled using the [`optimizeSSR`](https://vue-loader.vuejs.org/en/options.html#optimizessr) option.
|
||||
This is used by default in `vue-loader@>=12` and can be disabled using the [`optimizeSSR`](https://vue-loader.vuejs.org/options.html#optimizessr) option.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "vue-template-compiler",
|
||||
"version": "2.7.16-beta.1",
|
||||
"version": "2.7.16",
|
||||
"description": "template compiler for Vue 2.0",
|
||||
"main": "index.js",
|
||||
"unpkg": "browser.js",
|
||||
|
|
|
|||
|
|
@ -133,8 +133,8 @@ importers:
|
|||
specifier: ^4.8.4
|
||||
version: 4.9.5
|
||||
vitest:
|
||||
specifier: ^1.0.0
|
||||
version: 1.0.1(@types/node@20.10.3)(jsdom@19.0.0)(terser@5.25.0)
|
||||
specifier: ^1.0.4
|
||||
version: 1.0.4(@types/node@20.10.3)(jsdom@19.0.0)(terser@5.25.0)
|
||||
yorkie:
|
||||
specifier: ^2.0.0
|
||||
version: 2.0.0
|
||||
|
|
@ -939,38 +939,38 @@ packages:
|
|||
dev: true
|
||||
optional: true
|
||||
|
||||
/@vitest/expect@1.0.1:
|
||||
resolution: {integrity: sha512-3cdrb/eKD/0tygDX75YscuHEHMUJ70u3UoLSq2eqhWks57AyzvsDQbyn53IhZ0tBN7gA8Jj2VhXiOV2lef7thw==}
|
||||
/@vitest/expect@1.0.4:
|
||||
resolution: {integrity: sha512-/NRN9N88qjg3dkhmFcCBwhn/Ie4h064pY3iv7WLRsDJW7dXnEgeoa8W9zy7gIPluhz6CkgqiB3HmpIXgmEY5dQ==}
|
||||
dependencies:
|
||||
'@vitest/spy': 1.0.1
|
||||
'@vitest/utils': 1.0.1
|
||||
'@vitest/spy': 1.0.4
|
||||
'@vitest/utils': 1.0.4
|
||||
chai: 4.3.10
|
||||
dev: true
|
||||
|
||||
/@vitest/runner@1.0.1:
|
||||
resolution: {integrity: sha512-/+z0vhJ0MfRPT3AyTvAK6m57rzlew/ct8B2a4LMv7NhpPaiI2QLGyOBMB3lcioWdJHjRuLi9aYppfOv0B5aRQA==}
|
||||
/@vitest/runner@1.0.4:
|
||||
resolution: {integrity: sha512-rhOQ9FZTEkV41JWXozFM8YgOqaG9zA7QXbhg5gy6mFOVqh4PcupirIJ+wN7QjeJt8S8nJRYuZH1OjJjsbxAXTQ==}
|
||||
dependencies:
|
||||
'@vitest/utils': 1.0.1
|
||||
'@vitest/utils': 1.0.4
|
||||
p-limit: 5.0.0
|
||||
pathe: 1.1.1
|
||||
dev: true
|
||||
|
||||
/@vitest/snapshot@1.0.1:
|
||||
resolution: {integrity: sha512-wIPtPDGSxEZ+DpNMc94AsybX6LV6uN6sosf5TojyP1m2QbKwiRuLV/5RSsjt1oWViHsTj8mlcwrQQ1zHGO0fMw==}
|
||||
/@vitest/snapshot@1.0.4:
|
||||
resolution: {integrity: sha512-vkfXUrNyNRA/Gzsp2lpyJxh94vU2OHT1amoD6WuvUAA12n32xeVZQ0KjjQIf8F6u7bcq2A2k969fMVxEsxeKYA==}
|
||||
dependencies:
|
||||
magic-string: 0.30.5
|
||||
pathe: 1.1.1
|
||||
pretty-format: 29.7.0
|
||||
dev: true
|
||||
|
||||
/@vitest/spy@1.0.1:
|
||||
resolution: {integrity: sha512-yXwm1uKhBVr/5MhVeSmtNqK+0q2RXIchJt8kokEKdrWLtkPeDgdbZ6SjR1VQGZuNdWL6sSBnLayIyVvcS0qLfA==}
|
||||
/@vitest/spy@1.0.4:
|
||||
resolution: {integrity: sha512-9ojTFRL1AJVh0hvfzAQpm0QS6xIS+1HFIw94kl/1ucTfGCaj1LV/iuJU4Y6cdR03EzPDygxTHwE1JOm+5RCcvA==}
|
||||
dependencies:
|
||||
tinyspy: 2.2.0
|
||||
dev: true
|
||||
|
||||
/@vitest/utils@1.0.1:
|
||||
resolution: {integrity: sha512-MGPCHkzXbbAyscrhwGzh8uP1HPrTYLWaj1WTDtWSGrpe2yJWLRN9mF9ooKawr6NMOg9vTBtg2JqWLfuLC7Dknw==}
|
||||
/@vitest/utils@1.0.4:
|
||||
resolution: {integrity: sha512-gsswWDXxtt0QvtK/y/LWukN7sGMYmnCcv1qv05CsY6cU/Y1zpGX1QuvLs+GO1inczpE6Owixeel3ShkjhYtGfA==}
|
||||
dependencies:
|
||||
diff-sequences: 29.6.3
|
||||
loupe: 2.3.7
|
||||
|
|
@ -6548,8 +6548,8 @@ packages:
|
|||
engines: {node: '>= 0.8'}
|
||||
dev: true
|
||||
|
||||
/vite-node@1.0.1(@types/node@20.10.3)(terser@5.25.0):
|
||||
resolution: {integrity: sha512-Y2Jnz4cr2azsOMMYuVPrQkp3KMnS/0WV8ezZjCy4hU7O5mUHCAVOnFmoEvs1nvix/4mYm74Len8bYRWZJMNP6g==}
|
||||
/vite-node@1.0.4(@types/node@20.10.3)(terser@5.25.0):
|
||||
resolution: {integrity: sha512-9xQQtHdsz5Qn8hqbV7UKqkm8YkJhzT/zr41Dmt5N7AlD8hJXw/Z7y0QiD5I8lnTthV9Rvcvi0QW7PI0Fq83ZPg==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
|
|
@ -6606,8 +6606,8 @@ packages:
|
|||
fsevents: 2.3.3
|
||||
dev: true
|
||||
|
||||
/vitest@1.0.1(@types/node@20.10.3)(jsdom@19.0.0)(terser@5.25.0):
|
||||
resolution: {integrity: sha512-MHsOj079S28hDsvdDvyD1pRj4dcS51EC5Vbe0xvOYX+WryP8soiK2dm8oULi+oA/8Xa/h6GoJEMTmcmBy5YM+Q==}
|
||||
/vitest@1.0.4(@types/node@20.10.3)(jsdom@19.0.0)(terser@5.25.0):
|
||||
resolution: {integrity: sha512-s1GQHp/UOeWEo4+aXDOeFBJwFzL6mjycbQwwKWX2QcYfh/7tIerS59hWQ20mxzupTJluA2SdwiBuWwQHH67ckg==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
|
|
@ -6632,11 +6632,11 @@ packages:
|
|||
optional: true
|
||||
dependencies:
|
||||
'@types/node': 20.10.3
|
||||
'@vitest/expect': 1.0.1
|
||||
'@vitest/runner': 1.0.1
|
||||
'@vitest/snapshot': 1.0.1
|
||||
'@vitest/spy': 1.0.1
|
||||
'@vitest/utils': 1.0.1
|
||||
'@vitest/expect': 1.0.4
|
||||
'@vitest/runner': 1.0.4
|
||||
'@vitest/snapshot': 1.0.4
|
||||
'@vitest/spy': 1.0.4
|
||||
'@vitest/utils': 1.0.4
|
||||
acorn-walk: 8.3.1
|
||||
cac: 6.7.14
|
||||
chai: 4.3.10
|
||||
|
|
@ -6652,7 +6652,7 @@ packages:
|
|||
tinybench: 2.5.1
|
||||
tinypool: 0.8.1
|
||||
vite: 5.0.5(@types/node@20.10.3)(terser@5.25.0)
|
||||
vite-node: 1.0.1(@types/node@20.10.3)(terser@5.25.0)
|
||||
vite-node: 1.0.4(@types/node@20.10.3)(terser@5.25.0)
|
||||
why-is-node-running: 2.2.2
|
||||
transitivePeerDependencies:
|
||||
- less
|
||||
|
|
|
|||
|
|
@ -34,6 +34,9 @@ export function initMixin(Vue: typeof Component) {
|
|||
vm.__v_skip = true
|
||||
// effect scope
|
||||
vm._scope = new EffectScope(true /* detached */)
|
||||
// #13134 edge case where a child component is manually created during the
|
||||
// render of a parent component
|
||||
vm._scope.parent = undefined
|
||||
vm._scope._vm = true
|
||||
// merge options
|
||||
if (options && options._isComponent) {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ import VNode, { createEmptyVNode } from '../vdom/vnode'
|
|||
|
||||
import { isUpdatingChildComponent } from './lifecycle'
|
||||
import type { Component } from 'types/component'
|
||||
import { setCurrentInstance } from 'v3/currentInstance'
|
||||
import { currentInstance, setCurrentInstance } from 'v3/currentInstance'
|
||||
import { syncSetupSlots } from 'v3/apiSetup'
|
||||
|
||||
export function initRender(vm: Component) {
|
||||
|
|
@ -120,11 +120,10 @@ export function renderMixin(Vue: typeof Component) {
|
|||
// to the data on the placeholder node.
|
||||
vm.$vnode = _parentVnode!
|
||||
// render self
|
||||
const prevInst = currentInstance
|
||||
const prevRenderInst = currentRenderingInstance
|
||||
let vnode
|
||||
try {
|
||||
// There's no need to maintain a stack because all render fns are called
|
||||
// separately from one another. Nested component's render fns are called
|
||||
// when parent component is patched.
|
||||
setCurrentInstance(vm)
|
||||
currentRenderingInstance = vm
|
||||
vnode = render.call(vm._renderProxy, vm.$createElement)
|
||||
|
|
@ -148,8 +147,8 @@ export function renderMixin(Vue: typeof Component) {
|
|||
vnode = vm._vnode
|
||||
}
|
||||
} finally {
|
||||
currentRenderingInstance = null
|
||||
setCurrentInstance()
|
||||
currentRenderingInstance = prevRenderInst
|
||||
setCurrentInstance(prevInst)
|
||||
}
|
||||
// if the returned array contains only a single node, allow it
|
||||
if (isArray(vnode) && vnode.length === 1) {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import { Vue } from './vue'
|
||||
import './umd'
|
||||
import './jsx'
|
||||
export * from './jsx'
|
||||
|
||||
export default Vue
|
||||
|
||||
|
|
@ -49,7 +50,12 @@ export {
|
|||
ComputedOptions as ComponentComputedOptions,
|
||||
MethodOptions as ComponentMethodOptions,
|
||||
ComponentPropsOptions,
|
||||
ComponentCustomOptions
|
||||
ComponentCustomOptions,
|
||||
ComponentOptionsMixin,
|
||||
ComponentOptionsWithoutProps,
|
||||
ComponentOptionsWithArrayProps,
|
||||
ComponentOptionsWithProps,
|
||||
ComponentOptionsBase
|
||||
} from './v3-component-options'
|
||||
export {
|
||||
ComponentInstance,
|
||||
|
|
|
|||
Loading…
Reference in New Issue