当前位置: 首页 > 知识库问答 >
问题:

vue.js - unplugin-vue-components在vue-router中无法自动导入组件?

呼延卓
2024-01-02

在view/HomeView.vue使用自定义组件时一直找不到,只能在App.vue里能找到,
报错:No loader is configured for ".vue" files: packages/components/card/Card.vue

共有2个答案

孙海
2024-01-02

相对路径的问题。安装vue-loader 和 vue-template-compiler也没解决问题。
以为App.vue就是所有的入口,结果HomeView.vue也是入口;
我用unplugin-vue-components导入的是自定义组件,我的组件放在src同级的packages目录下,如果从App.vue去找是能找到的,但换了views/HomeView.vue就是从当前文件的路径去找就找不到了;
在vite.config.ts配置一个别名,使其能定位到packages目录下

resolve: {  alias: {    '@': fileURLToPath(new URL('./src', import.meta.url)),    '@packages': fileURLToPath(new URL('./packages', import.meta.url))  }}
管梓
2024-01-02

这个错误提示表明,你的项目中没有为 ".vue" 文件配置加载器(loader)。在 Webpack 中,文件需要经过特定的加载器处理后才能被打包进最终的 bundle 中。对于 ".vue" 文件,通常需要配置 vue-loader

要解决这个问题,你需要在项目的 Webpack 配置中添加 vue-loader。具体步骤如下:

  1. 首先,确保你已经安装了 vue-loadervue-template-compiler。如果没有,可以通过 npm 安装:
npm install --save-dev vue-loader vue-template-compiler
  1. 接着,在你的 Webpack 配置文件(通常是 webpack.config.js)中,添加或修改 module.rules 部分,添加对 ".vue" 文件的处理规则:
module.exports = {  // ... 其他配置 ...  module: {    rules: [      // ... 其他规则 ...      {        test: /\.vue$/,        loader: 'vue-loader'      }    ]  }  // ... 其他配置 ...};
  1. 最后,确保你的项目使用了支持 Vue 的 Webpack 版本。Vue 2 需要 Webpack 4,而 Vue 3 需要 Webpack 5。如果你的项目使用的是旧版本的 Webpack,你可能需要升级。

完成以上步骤后,Webpack 应该能够正确处理 ".vue" 文件,你的组件应该能够被正确导入和使用了。如果仍然遇到问题,检查你的导入语句是否正确,并确保你的组件路径是正确的。

 类似资料:
  • unplugin-vue-router怎么配置? 报错:[Vue Router warn]: No match found for location with path "/index" vite.confing.ts src/views/index/vue

  • 我无法在任何vue组件中导入引导(使用最新的nuxtjs)。我得到: 我的(简单)组件是: 我真的被卡住了。你有什么想法或建议吗?

  • 几天来,我一直在尝试设置Vue组件库。我看了几个教程,并通读了一些流行的现有UI库的代码。我的问题归结为: 我的库称为@Company/vue-组件 我将我的库安装到一个带有npm的项目中: 然后,我尝试将我的库注册为Vue的插件: 我尝试在vue cli中使用我的组件。vue页面(称为EButton): 但我有一个错误: 如果我回到我注册插件的地方,我可以改变这个,它会工作: 所以,我猜我没有正

  • 本文向大家介绍Vue.js路由组件vue-router使用方法详解,包括了Vue.js路由组件vue-router使用方法详解的使用技巧和注意事项,需要的朋友参考一下 使用Vue.js + vue-router 创建单页应用是非常简单的。只需要配置组件和路由映射,然后告诉 vue-router 在哪里渲染即可。 一、普通方式基本例子: 二、块化机制编程基本例子,以在vue-cli中的使用方法为例

  • 我的组件是这样的 我看别人给的案例都是写元素的,但我这里有类名

  • 本文向大家介绍vue系列之requireJs中引入vue-router的方法,包括了vue系列之requireJs中引入vue-router的方法的使用技巧和注意事项,需要的朋友参考一下 requireJs简介 参数配置 requireJS 常用的方法与命令也就两个,因此requireJS使用起来非常简单。 require define 其中define是用于定义模块,而require是用于载入模