自定义属性以任何方式添加到组件实例,可以通过this
访问
这是向每个组件实例添加属性$router
和$axios
的示例:
import { createApp } from "vue";
import { Router, createRouter } from "vue-router";
import axios from "axios";
declare module "@vue/runtime-core" {
interface ComponentCustomProperties {
$router: Router
}
}
// 有效地将路由器添加到每个组件实例
const app = createApp({});
const router = createRouter();
app.config.globalProperties.$router = router;
pp.config.globalProperties.$http = axios;
const vm = app.mount("#app");
// 我们可以从实例访问路由器
vm.$router.push("/");