GitShow/vuejs/core
vuejs

core

๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

by vuejs
Star on GitHubForkWebsitenpm

TypeScript

54.5k stars9.2k forks650 contributorsActive ยท 6h agoSince 2018v3.5.43MIT

Meet the team

See all 650 on GitHub โ†’
yyx990803
yyx9908033.6k contributions
dependabot-preview[bot]Bot
dependabot-preview[bot]528 contributions
renovate[bot]Bot
renovate[bot]493 contributions
edison1105
edison1105367 contributions
sxzz
sxzz110 contributions
HcySunYang
HcySunYang91 contributions
pikax
pikax83 contributions
underfin
underfin81 contributions

Languages

View on GitHub โ†’
TypeScript96.8%
JavaScript1.6%
HTML1.1%
Vue0.4%
CSS0%

Commit activity

Last 12 weeks ยท 96 commits

Full graph โ†’

Community health

3 of 6 standards met

Community profile โ†’
62
โœ“READMEโœ“Licenseโœ“Contributingโ—‹Code of Conductโ—‹Issue Templateโ—‹PR Template

Recent PRs & issues

Active ยท Last activity 6h ago
See all on GitHub โ†’
snmsoodan
fix(reactivity): notify the rest of the batch when an effect throwsOpenPR

Problem An error thrown while notifying an effect leaves half-way through the notify buffer, so the rest of the batch is not notified and is instead delivered by the next unrelated write. The sync watcher throws from the dirty check inside , which escapes . 's other subscribers โ€” including a component's render effect โ€” are never notified, so the view keeps the previous content until some unrelated reactive write happens to flush the stale buffer: Clicking the button throws and the paragraph still says . Measured with the same app in : Root cause walks : Verification on the final revision: โ†’ 61 files, 1580 passed; the same command with only the source change reverted โ†’ 1576 passed with the 4 tests above failing (browser/e2e suites are not runnable in this environment). (), , and oxlint (strict config from ) are clean; oxlint reports the same single pre-existing finding on before and after. Out of scope The effect whose threw keeps its flag, so the next clears its flags without re-queueing it โ€” in the repro above the sync watcher never fires again even after is restored to an object. That behaviour is identical before and after this change (measured on both revisions); it is a flags-lifecycle question in , not the notify buffer, so I left it alone here. Happy to look at it separately if that is useful. ref #15674

snmsoodan ยท 47m ago
ValentinYoushkevich
fix(compiler-vapor): keep end tags of lists nested in list itemsOpenPR

The browser ignores `Cannot read properties of null (reading '$clsFlags')form` branch from #15693.

ValentinYoushkevich ยท 6h ago
ValentinYoushkevich
fix(compiler-vapor): recognize a kebab-case keep-alive tagOpenPR

In a Vapor template, `Failed to resolve component: keep-aliveisKeepAliveTagisTransitionGroupTag` already does.

ValentinYoushkevich ยท 6h ago

Recent fixes

View closed PRs โ†’
ValentinYoushkevich
fix(runtime-vapor): render vdom content with no current instanceMergedPR

When a Vapor component renders a VDOM component, the VDOM render runs with the Vapor instance as the current instance. in a functional component prefers the current instance over the rendering one, so it misses what the VDOM parent (or the Vapor component itself) provided. A Vapor page using an idux menu throws here, because destructures . Playground: both sides should show "provided by Menu". VDOM never has a current instance while it patches, since only sets it around . The interop now clears it around every VDOM mount, patch and hydrate it starts, instead of setting the Vapor parent. That covers vnodes, components, slots and outlet fallbacks.

ValentinYoushkevich ยท 6h ago
ValentinYoushkevich
fix(vapor): resolve `<style module>` bindings in templatesMergedPR

In a vapor SFC, (or a named module like ) from `ReferenceError: $style is not defined_ctx.$style.redtype.__cssModulescompileScriptuseCssModule()$attrs$slotssetup()__cssModulessetup()useCssModule()const $style = useCssModule()useCssModule()$style`.

ValentinYoushkevich ยท 7h ago
ValentinYoushkevich
fix(compiler-vapor): register same-element listeners after v-modelMergedPR

Since #15201 moved v-model after the other operations of an element, a listener written next to a native is added before v-model's own one. So it runs first and reads the old value: `createdvapor:type@[event]v-on="obj"v-bind="$attrs"setDynamicProps@change="getJournals"v-model` value, so changing the filter loads the journals of the previous one.

ValentinYoushkevich ยท 7h ago
Structured data for AI agents

Repository: vuejs/core. Description: ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. Stars: 54460, Forks: 9218. Primary language: TypeScript. Languages: TypeScript (96.8%), JavaScript (1.6%), HTML (1.1%), Vue (0.4%), CSS (0%). License: MIT. Homepage: https://vuejs.org/ Latest release: v3.5.43 (1w ago). Open PRs: 100, open issues: 819. Last activity: 6h ago. Community health: 62%. Top contributors: yyx990803, dependabot-preview[bot], renovate[bot], edison1105, sxzz, HcySunYang, pikax, underfin, dependabot[bot], Alfred-Skyblue and others.

ยท@ofershap

Replace github.com with gitshow.dev