在根组件或父组件下安装 Quasar Dialog:如何做到?
P粉990008428
P粉990008428 2024-03-27 13:46:14
0
2
442

动态创建的Dialog默认挂载在<body>标签下,这样就无法使用全局的Provide和Inject。 Dialog如何挂载在div#app下或者挂载在parent下?

P粉990008428
P粉990008428

全部回复(2)
P粉561438407

您可以使用 app.provide() 在 Vue app 上设置提供 而不是 <App/> 组件。例如在入口脚本中

import { createApp } from 'vue'
import { Quasar, Dialog } from 'quasar'
import App from './App.vue'
createApp(App)
    .provide('name', value)
    .use(Quasar, {
        plugins: {
            Dialog,
        }
    })
    .mount('#app')

然后,您将能够在 Quasar 对话框子项中使用 inject() 相同的项目,即使该对话框安装在 <body> 下。

P粉018653751

它总是安装在 <body> (非 SSR)下或无处安装(SSR 模式) - 不仅仅是“默认情况下”。只需查看来源 - https://github.com/quasarframework/quasar/blob/dev/ui/src/utils/private/global-nodes.js#L6

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!