今天get到一个解决方案,关于单vue组件过大拆分的问题。
举个例子,有个test文件,里面的代码量很大,之前是这样解决的:拆分成多个.vue文件,通过组件引入的方式,每个.vue文件都要写template、script。调用子组件的方式需要通过ref。
存在的问题:只想引用js,却需要按照通用组件的方式引入,并且每个都需要写template和一个div,带来性能损耗。
解决方案:使用vue.js mixins,将不同的逻辑放到不同的js文件里,方法直接通过this调用。
例子
mixins.js
expord default {
data() {
}
}
- List item
在test里混合
<script>
import mixins from '../mixins.js'
export default {
mixins: [mixins]
}
</scrpit>