创建一个应用实例。
function createApp(rootComponent: Component, rootProps?: object): App
详情信息:
第一个参数是根组件。第二个参数可选,它是要传递给根组件的 props。
我们在vue3中man.ts中常见的写法如下:
createApp(App).use(router).use(pinia).mount('#app')
若我们想使自己使用一个弹框,定义如下:
import { createApp } from "vue";
const MessageBox = {props:{msg:{type:String,}},render (ctx){const {$props,$emit} = ctx;return (<div><div>{$props.msg}</div><button click={$emit('onClick')}>关闭</button></div>)}
}
export function showMsg (msg,onClick ){console.log('msg', msg)
const div = document.createElement('div');document.body.appendChild(div);
// 渲染组件到页面上
const app = createApp(MessageBox,{
msg,
onClick(){onClick(()=>{app.mount();div.remove();})
},})
app.mount(div);
}
使用
showMsg('好好学习',(close)=>{close();});