-
-
Notifications
You must be signed in to change notification settings - Fork 6.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't find component on template refresh when importing component in script setup #748
Comments
Look like it caused by |
Please check out this section in the RFC: https://github.com/vuejs/rfcs/blob/sfc-improvements/active-rfcs/0000-sfc-script-setup.md#exposing-components |
Sure @underfin here it is: https://github.com/gawlk/vite-component-import-in-setup-bug-demo @antfu That's exactly the method that I used as you can see in the code |
|
Confirmed as a bug related to hmr or the compiler On the first build, it resolved the component currently import { createVNode as _createVNode, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock } from "/@modules/vue.js"
const _hoisted_1 = /*#__PURE__*/_createVNode("img", {
alt: "Vue logo",
src: "/src/assets/logo.png"
}, null, -1 /* HOISTED */)
export function render(_ctx, _cache, $props, $setup, $data, $options) {
return (_openBlock(), _createBlock(_Fragment, null, [
_hoisted_1,
_createVNode($setup["HelloWorld"], { msg: "Hello Vue 3.0 + Vite" })
], 64 /* STABLE_FRAGMENT */))
} And when the import { createVNode as _createVNode, resolveComponent as _resolveComponent, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock } from "/@modules/vue.js"
const _hoisted_1 = /*#__PURE__*/_createVNode("img", {
alt: "Vue logo",
src: "/src/assets/logo.png"
}, null, -1 /* HOISTED */)
export function render(_ctx, _cache) {
const _component_HelloWorld = _resolveComponent("HelloWorld")
return (_openBlock(), _createBlock(_Fragment, null, [
_hoisted_1,
_createVNode(_component_HelloWorld, { msg: "Hello Vue 3.0 + Vite 2" })
], 64 /* STABLE_FRAGMENT */))
} |
Describe the bug
First of all I'm not sure if that's a
vite
or avue 3
issue. I'm sorry if it's the wrong repo.So the issue is the next, when I save a file with components imported inside a
<script setup>
tag, like so:I get those errors:
But if I use the good old technique:
Everything is fine.
The errors are here only when it's a template refresh like so:
[vite:hmr] src/pages/Home/Index.vue updated. (template)
But if it's a full reload it finds the components successfully.
Reproduction
Do you need one ?
System Info
vite
version: LatestLogs (Optional if provided reproduction)
Works:
Fails:
The text was updated successfully, but these errors were encountered: