学习使用 vue mixin
import { service } from '@/utils/request' const myMix = { created () {
this.helloWorld()
this.getTypeList()
},
methods: {
helloWorld(){
console.log('hello world')
}, async getTypeList () { const retdata = await this.$api.audit.getWordTypeList({ page: 1, pagesize: 100 }) this.dealMap = {} const _this = this retdata.data.list.forEach(item => { _this.dealMap[item.id] = item.sp_name }) } } } async function getTypeList () { const retdata = await service.get('/admin/audit/get_illegal_word_sp_type_list', {params:{ page: 1, pageSize: 100 }}) const dealMap = {} retdata.data.list.forEach(item => { dealMap[item.id] = item.sp_name }) return dealMap } export { myMix, getTypeList }
import { myMix ,getTypeList } from '@/utils/cmnFunc' name: 'AuditTextBase', // mixins: [myMix], created(){ getTypeList() }
other
1、
现在用mixin还多吗
我不怎么用 主要是 不好用
写一个 base Page
可以用 extend 继承
存 store 可以吗 或者依赖注入 (就是从父组件的数据, 它的所有后代组件都可以获取 挺方便的)
2、别用mixin吧
你就直接继承
这个不方便
你需要获取数据,然后用callback或者promise返回数据
Mixin是插入到vue组件里的,this肯定可以用