我正在一个项目中,我正在将Vue与Typescript和Vue-property-decorator结合使用。我使用lib模式下的vue-cli-service构建组件,并将目标单个组件构建为在常规网站(而非SPA)中使用。 问题是,使用vue-property-decorator时,我认为构建太大。当我不使用vue-property-decorator时,采用旧的方式,捆绑的组件比with少50%。
具有vue-property-decorator:
import { Component, Vue, Prop } from "vue-property-decorator";
@Component({})
export default class Testert extends Vue {}
Size when built: Testert.umd.min.js 6.08 KiB
没有vue-property-decorator:
import Vue from "vue";
export default Vue.extend({
name: "Header" as string,
data() {
return {
test: "Test" as string,
};
},
methods: {}
});
Size when built: Header.umd.min.js 3.08 KiB
在lib模式下使用--target build时,捆绑包中不包含Vue,所以这不是问题。
现在您会说,使用旧时尚方式对吗?我只是喜欢vue-property-decorator语法,所以我宁愿使用它。
任何人都可以告诉我是否可以减小构建的大小或至少将我的方向指向正确。如果不清楚,请告诉我!
谢谢!