@ -1,26 +0,0 @@
|
||||
import homeApi from '~/api/home'
|
||||
import aboutApi from '~/api/about'
|
||||
import userApi from '~/api/user'
|
||||
|
||||
/**
|
||||
* 将api注入到全局
|
||||
*
|
||||
* 在页面或组件里使用
|
||||
* async mounted() {
|
||||
const games = await this.$api.game.getGameList({ page: 1 })
|
||||
}
|
||||
|
||||
async asyncData({ app }) {
|
||||
const games = await app.$api.game.getGameList({ page: 1 })
|
||||
},
|
||||
|
||||
*/
|
||||
export default ({ $axios }, inject) => {
|
||||
const api = {
|
||||
home: homeApi($axios),
|
||||
about: aboutApi($axios),
|
||||
user: userApi($axios),
|
||||
}
|
||||
|
||||
inject('api', api) // 将api注入到全局
|
||||
}
|
||||
@ -1,26 +0,0 @@
|
||||
//设置请求和拦截响应器
|
||||
|
||||
export default function({
|
||||
$axios,
|
||||
app
|
||||
}) {
|
||||
// 请求拦截器
|
||||
$axios.onRequest(config => {
|
||||
|
||||
// 如果用 token,从 cookie 拿
|
||||
const token = app.$cookies.get('token')
|
||||
if (token) {
|
||||
config.headers.Authorization = `Bearer ${token}` //鉴权方式,这里使用的bearer
|
||||
}
|
||||
return config
|
||||
}, error => Promise.reject(error))
|
||||
|
||||
// 响应拦截器
|
||||
$axios.onResponse(response => {
|
||||
if(response.code!=0){
|
||||
return response
|
||||
}
|
||||
return response.data // 直接返回 data,调用时不用再写 res.data
|
||||
}, error => Promise.reject(error))
|
||||
|
||||
}
|
||||
@ -1,146 +0,0 @@
|
||||
import Vue from 'vue';
|
||||
import 'element-ui/lib/theme-chalk/index.css'
|
||||
import {
|
||||
Pagination,
|
||||
Dialog,
|
||||
Autocomplete,
|
||||
Dropdown,
|
||||
DropdownMenu,
|
||||
DropdownItem,
|
||||
Menu,
|
||||
Submenu,
|
||||
MenuItem,
|
||||
MenuItemGroup,
|
||||
Input,
|
||||
InputNumber,
|
||||
Radio,
|
||||
RadioGroup,
|
||||
RadioButton,
|
||||
Checkbox,
|
||||
CheckboxButton,
|
||||
CheckboxGroup,
|
||||
Switch,
|
||||
Select,
|
||||
Option,
|
||||
OptionGroup,
|
||||
Button,
|
||||
ButtonGroup,
|
||||
Table,
|
||||
TableColumn,
|
||||
DatePicker,
|
||||
TimeSelect,
|
||||
TimePicker,
|
||||
Popover,
|
||||
Tooltip,
|
||||
Breadcrumb,
|
||||
BreadcrumbItem,
|
||||
Form,
|
||||
FormItem,
|
||||
Tabs,
|
||||
TabPane,
|
||||
Tag,
|
||||
Tree,
|
||||
Alert,
|
||||
Slider,
|
||||
Icon,
|
||||
Row,
|
||||
Col,
|
||||
Upload,
|
||||
Progress,
|
||||
Badge,
|
||||
Card,
|
||||
Rate,
|
||||
Steps,
|
||||
Step,
|
||||
Carousel,
|
||||
CarouselItem,
|
||||
Collapse,
|
||||
CollapseItem,
|
||||
Cascader,
|
||||
ColorPicker,
|
||||
Transfer,
|
||||
Container,
|
||||
Header,
|
||||
Aside,
|
||||
Main,
|
||||
Footer,
|
||||
Loading,
|
||||
MessageBox,
|
||||
Message,
|
||||
Notification,
|
||||
Backtop
|
||||
} from 'element-ui';
|
||||
|
||||
Vue.use(Backtop);
|
||||
Vue.use(Pagination);
|
||||
Vue.use(Dialog);
|
||||
Vue.use(Autocomplete);
|
||||
Vue.use(Dropdown);
|
||||
Vue.use(DropdownMenu);
|
||||
Vue.use(DropdownItem);
|
||||
Vue.use(Menu);
|
||||
Vue.use(Submenu);
|
||||
Vue.use(MenuItem);
|
||||
Vue.use(MenuItemGroup);
|
||||
Vue.use(Input);
|
||||
Vue.use(InputNumber);
|
||||
Vue.use(Radio);
|
||||
Vue.use(RadioGroup);
|
||||
Vue.use(RadioButton);
|
||||
Vue.use(Checkbox);
|
||||
Vue.use(CheckboxButton);
|
||||
Vue.use(CheckboxGroup);
|
||||
Vue.use(Switch);
|
||||
Vue.use(Select);
|
||||
Vue.use(Option);
|
||||
Vue.use(OptionGroup);
|
||||
Vue.use(Button);
|
||||
Vue.use(ButtonGroup);
|
||||
Vue.use(Table);
|
||||
Vue.use(TableColumn);
|
||||
Vue.use(DatePicker);
|
||||
Vue.use(TimeSelect);
|
||||
Vue.use(TimePicker);
|
||||
Vue.use(Popover);
|
||||
Vue.use(Tooltip);
|
||||
Vue.use(Breadcrumb);
|
||||
Vue.use(BreadcrumbItem);
|
||||
Vue.use(Form);
|
||||
Vue.use(FormItem);
|
||||
Vue.use(Tabs);
|
||||
Vue.use(TabPane);
|
||||
Vue.use(Tag);
|
||||
Vue.use(Tree);
|
||||
Vue.use(Alert);
|
||||
Vue.use(Slider);
|
||||
Vue.use(Icon);
|
||||
Vue.use(Row);
|
||||
Vue.use(Col);
|
||||
Vue.use(Upload);
|
||||
Vue.use(Progress);
|
||||
Vue.use(Badge);
|
||||
Vue.use(Card);
|
||||
Vue.use(Rate);
|
||||
Vue.use(Steps);
|
||||
Vue.use(Step);
|
||||
Vue.use(Carousel);
|
||||
Vue.use(CarouselItem);
|
||||
Vue.use(Collapse);
|
||||
Vue.use(CollapseItem);
|
||||
Vue.use(Cascader);
|
||||
Vue.use(ColorPicker);
|
||||
Vue.use(Container);
|
||||
Vue.use(Header);
|
||||
Vue.use(Aside);
|
||||
Vue.use(Main);
|
||||
Vue.use(Footer);
|
||||
|
||||
Vue.use(Loading.directive);
|
||||
|
||||
Vue.prototype.$loading = Loading.service;
|
||||
Vue.prototype.$msgbox = MessageBox;
|
||||
Vue.prototype.$alert = MessageBox.alert;
|
||||
Vue.prototype.$confirm = MessageBox.confirm;
|
||||
Vue.prototype.$prompt = MessageBox.prompt;
|
||||
Vue.prototype.$notify = Notification;
|
||||
Vue.prototype.$message = Message;
|
||||
@ -1,5 +0,0 @@
|
||||
import Vue from 'vue'
|
||||
export default ({ app }, inject) => {
|
||||
const eventBus = new Vue()
|
||||
inject('bus', eventBus)
|
||||
}
|
||||
@ -1,13 +0,0 @@
|
||||
// 设置全局前置守卫和后置守卫
|
||||
|
||||
export default ({ app, store }) => {
|
||||
//全局前置守卫
|
||||
// app.router.beforeEach((to, from, next) => {
|
||||
|
||||
// })
|
||||
|
||||
//全局后置守卫
|
||||
// app.router.afterEach((to, from) => {
|
||||
|
||||
// })
|
||||
}
|
||||
Reference in New Issue
Block a user