vue+ts 使用vue-class-component写组件打包后组件的name属性发生了变化!

发布于 2022-09-11 17:14:40 字数 514 浏览 11 评论 0

使用的是vue全家桶+typescript+electron开发的项目

layout.vue
clipboard.png

开发环境
开发环境下控制台截图

生产环境
生产环境下控制台截图

感觉应该是打包的时候把代码压缩了,顺便把name值也给压缩了...以前写name没什么问题,但是上了ts,name就出现了问题。有知道怎么解决的吗?组件的name字段在本项目中有很重要的作用,其他代替的方案也有,但是比较麻烦,许多代码需要重构!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

在风中等你 2022-09-18 17:14:40

可以使用 component.options.name

https://github.com/vuejs/vue-...

小瓶盖 2022-09-18 17:14:40

请问一下, 打包出来的组件体积过大, 该怎么解决 ?

红颜悴 2022-09-18 17:14:40

我是注册全局组件的时候遇到了这个问题,导致打包后自定义的全局组件都没有渲染出来。这时候组件还没有实例化,获取不到$options,后来通过设置一个静态属性的名称解决了,这个名称任何时候都能获取到:

export default class CompGrid extends Vue {
  static ComponentName = 'comp-grid';
}

需要用的时候:

Vue.component(CompGrid.ComponentName, CompGrid);

Jyx的component.options.name更优解

豆芽 2022-09-18 17:14:40

在这里加上name属性就可以了clipboard.png

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文