Javascript Vue.js+;类型脚本组件注册
我正在将Vue.js项目迁移到TypeScript。 我在组件注册过程中发现问题。我的代码如下所示:Javascript Vue.js+;类型脚本组件注册,javascript,typescript,vue.js,Javascript,Typescript,Vue.js,我正在将Vue.js项目迁移到TypeScript。 我在组件注册过程中发现问题。我的代码如下所示: import {Vue, Component} from 'vue-property-decorator' import ScheduleCard from '../ScheduleCard/ScheduleCard.vue' @Component({ components: { ScheduleCard } }) export default class Sc
import {Vue, Component} from 'vue-property-decorator'
import ScheduleCard from '../ScheduleCard/ScheduleCard.vue'
@Component({
components: {
ScheduleCard
}
})
export default class ScheduleCanvas extends Vue {
get userSchedule() {
return this.$store.state.userSchedule;
}
addUserSchedule() {
this.$store.dispatch('prepareAndAddUserSchedule');
}
}
当我试图导入此组件并在另一个接收器中使用时,我发现一个错误,即找不到此组件
在.ts文件末尾添加Vue.component('schedule-canvas',ScheduleCanvas)
完成了这项工作,但为什么我必须添加这个?据我所知,没有这条线,这应该行得通。每个人都能告诉我为什么会这样,有什么问题吗
更新:在父组件的代码下面
import {Vue, Component} from 'vue-property-decorator'
import App from './App.vue'
import vuetify from './plugins/vuetify'
import store from './store/store'
import ScheduleCanvas from './components/ScheduleCanvas/ScheduleCanvas.vue'
@Component({
components: {
ScheduleCanvas
}
})
export default class Application extends Vue { }
new Vue({
el: '#app',
vuetify,
store,
render: h => h(App)
})
能否显示您尝试使用ScheduleCanvas组件的文件?您是否尝试过在@Component decorator中的“components”对象下添加ScheduleCanvas?我添加了父组件代码。只是想确定:当收到该错误时,是运行时错误(即在浏览器中加载页面时发生),还是编译器错误(即,无法构建捆绑包,因为
ScheduleCard.vue
的路径不正确)?您使用的是父组件视图还是父组件视图?符号“{ScheduleCanvas}”是“{ScheduleCanvas:ScheduleCanvas}”的缩写,因此您应该使用前者。要使用后者,您必须输入“组件:{'ScheduleCanvas':ScheduleCanvas}。错误是当我尝试在浏览器中加载页面时。我尝试了ScheduleCanvas和schedule canvas,两者都不工作:/ScheduleCard组件中的相同情况正常工作。