首页 > 解决方案 > Vue 无法解析父文件夹中的 index.vue

问题描述

我正在尝试仅使用路径文件夹导入组件,但我不断收到错误找不到模块 './components/layout/Navbar'.Vetur(2307)

这是我导入组件的方式

import Navbar from "./components/layout/Navbar";

@Component({
  components: {
    Navbar
  }
})

vue.config.js

const webpack = require("webpack");

module.exports = {
  configureWebpack: {
    plugins: [
      new webpack.ProvidePlugin({
        $: "jquery",
        jquery: "jquery",
        "window.jQuery": "jquery",
        jQuery: "jquery"
      })
    ]
  }
};

标签: typescriptvue.js

解决方案


我认为这不是一个好的解决方案,但如果没有其他选择,那么它可能会有所帮助。
最好指定整个文件。 如果您有大量需要重写的大量遗产,我会推荐这样的解决方案。


您可以在 shims-vue.d.ts 中声明任何模块。

declare module "*" {
  import Vue from 'vue';
  export default Vue;
}

Typescript 不会产生没有模块的错误。

但是使用这种方法,您会在编写代码的阶段失去提示。只有在组装阶段的 webpack 会说模块不存在。


推荐阅读