• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

205
Views
El componente Vue 3 deja de funcionar cuando se incluye en la plantilla de un componente principal

Estoy trabajando con una aplicación Vue 3 muy simple, que se detalla a continuación.

Debido a la naturaleza de nuestro proyecto, queremos usar plantillas en DOM.

Esto funciona bien para un solo componente. Pero una vez que se agrega un componente secundario, este componente no funciona.

Vea el ejemplo a continuación, donde SubComponent deja de funcionar cuando habilitamos createApp para el componente App .

Intenté usar tragamonedas, experimenté con el registro como componentes, pero ninguno de estos funciona.

¿Qué estoy pasando por alto?

 const {ref} = Vue; const SubComponent = { setup() { const text = ref(""); return { text }; } }; const App = { setup() { const count = ref(0); const inc = () => { count.value++; }; return { count, inc }; } } Vue.createApp(SubComponent).mount("#subcomponent"); Vue.createApp(App).mount('#app')
 <head> <script src="https://unpkg.com/vue@3.2.29/dist/vue.global.prod.js"></script> </head> <body> <div id="app"> <h1>Hello Vue 3!</h1> <button @click="inc">Clicked {{ count }} times.</button> <div id="subcomponent"> <h2>Hello from subcomponent</h2> <input v-model="text" /> <br /> <span>{{text}}</span> </div> </div> </body>

about 3 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Tal vez como el siguiente fragmento:

 const {ref} = Vue; const SubComponent = { template: ` <h2>Hello from subcomponent</h2> <input v-model="text" /> <br /> <span>{{text}}</span> `, setup() { const text = ref(""); return { text }; } }; const App = { setup() { const count = ref(0); const inc = () => { count.value++; }; return { count, inc }; } } Vue.createApp(App) .component('SubComponent', SubComponent) .mount('#app')
 <head> <script src="https://unpkg.com/vue@3.2.29/dist/vue.global.prod.js"></script> </head> <body> <div id="app"> <h1>Hello Vue 3!</h1> <button @click="inc">Clicked {{ count }} times.</button> <sub-component></sub-component> </div> </body>

about 3 years ago · Juan Pablo Isaza Report

0

No puede anidar varias aplicaciones vue, solo tiene una aplicación y dentro de ella puede tener componentes múltiples o anidados. Sin embargo, no estoy seguro de que el enfoque tenga todo en un solo archivo.

 const {ref} = Vue; const SubComponent = { setup() { const text = ref(""); return { text }; } }; const App = { components: { SubComponent, }, setup() { const count = ref(0); const inc = () => { count.value++; }; return { count, inc }; } } Vue.createApp(App).mount('#app')
 <head> <script src="https://unpkg.com/vue@3.2.29/dist/vue.global.prod.js"></script> </head> <body> <div id="app"> <h1>Hello Vue 3!</h1> <button @click="inc">Clicked {{ count }} times.</button> <sub-component> <h2>Hello from subcomponent</h2> <input v-model="text" /> <br /> <span>{{text}}</span> </sub-component> </div> </body>

about 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error