一:权限组件,优点可以很灵活,缺点每个地方使用都要引用这个组件
<script>
import{check} from '../util/auth';
export default {
functional:true,
props:{
authority:{
type:Array,
required:true
}
},
render(h,context){
const {props,scopedSlots} = context;
return check(props,authority) ? scopedSlots.default():null;
}
}
</script>
二:指令组件:优点使用方便,缺点无法实时的检查数据,只使用于第一次使用,不太灵活
import{check} from './util/auth'
function install(Vue,options={}){
Vue.directive(options.name ||'auth',{
inserted(el,binding){
if(!check(binding.value)){
el.parentNode&&el.parentNode.removeChild(el)
}
}
})
}
export default {install};