使用Vue3搭配Oruga时出现Missing template or render function错误
解决方案
你遇到的Missing template or render function报错可以通过以下几步修复:
- 移除组件内重复的Oruga表格组件注册
你已经在main.js中全局注册了完整的Oruga库,Oruga默认会给所有组件挂载o-前缀,不需要再在Vehicles页面单独引入注册o-table,重复注册会导致组件渲染冲突。
直接删除Vehicles页面中以下两行代码即可:
import { Table } from '@oruga-ui/oruga-next'
以及components注册配置:
components: { 'o-table': Table },
- 修正重名逻辑冲突
你导入的GraphQL查询函数和你自定义的方法名完全重名,会导致调用混乱,修改其中一个名称即可:
比如把导入的查询函数重命名:
import { listVehicles as listVehiclesQuery } from '../graphql/queries'
对应修改方法内的调用逻辑:
async listVehicles() { console.log("Getting Vehicles...") const vehicles = await API.graphql({ query: listVehiclesQuery }) this.vehicles = vehicles.data.listVehicles.items },
- 校验路由配置
如果修改后问题仍然存在,检查路由配置文件中Vehicles组件的导入路径是否正确:- 确认存放页面的目录名是
view还是通用的views - 确认导入时是否补充了
.vue文件后缀,错误的导入路径会导致组件无法读取模板内容,抛出对应报错。
- 确认存放页面的目录名是
内容的提问来源于stack exchange,提问作者Collin White
相关产品推荐
相关产品推荐

