36 lines
832 B
JavaScript
36 lines
832 B
JavaScript
import { createApp, markRaw } from "vue";
|
|
|
|
import App from "./App.vue";
|
|
import router from "./router";
|
|
import pinia from '@/stores/main.js'
|
|
import axios from 'axios';
|
|
import VueAxios from 'vue-axios';
|
|
import moment from 'moment';
|
|
import mitt from 'mitt';
|
|
import ToastPlugin from 'vue-toast-notification';
|
|
|
|
import "./assets/main.css";
|
|
import 'vue-toast-notification/dist/theme-sugar.css';
|
|
|
|
const emitter = mitt();
|
|
const app = createApp(App);
|
|
|
|
pinia.use(({ store }) => {
|
|
store.$router = markRaw(router)
|
|
store.$toast = markRaw(ToastPlugin)
|
|
});
|
|
|
|
// can use `this.$moment` in Vue.js
|
|
app.config.globalProperties.$moment = moment;
|
|
app.config.globalProperties.emitter = emitter;
|
|
|
|
app.use(pinia);
|
|
app.use(router);
|
|
app.use(VueAxios, axios);
|
|
// use `this.$toast` in Vue.js
|
|
app.use(ToastPlugin, {
|
|
duration: 10000,
|
|
});
|
|
|
|
app.mount("#app");
|