账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    TS文件引入vue文件在Vscode报错「找不到模块」如何解决?
    41
    0

    我是通过Vue create创建的项目,使用了typescript + vue-property-decorator, 但是在ts文件引入的时候vscode提示出错,但是可以通过编译。
    mian.ts

        import App from './App.vue';  // 找不到模块“./App.vue”。ts(2307)

    router.ts

        const Index = () => import('./views/Index.vue');  // 找不到模块“./Index.vue”。ts(2307)

    但是我在*.vue文件中引入就没有提示报错
    User.vue

    
    <script lang="ts">
        import { Component, Vue } from 'vue-property-decorator';
        import UserList from '../components/lists/UserList.vue';
    
        @Component({
            components: {
                UserList
            }
        })
        export default class User extends Vue { }
    </script>

    我通过能搜索到的方法修改shims-vue.d.tstsconfig.json文件也并没有解决问题
    shims-vue.d.ts

    import Vue from 'vue';
    import VueRouter from 'vue-router';
    import { Route } from 'vue-router';
    import { Store } from 'vuex';
    
    declare module '*.vue' {
        import Vue from 'vue';
        export default Vue;
    }
    // 扩充
    declare module 'vue/types/vue' {
        interface Vue {
            $router: VueRouter;
            $route: Route;
            $store: Store<any>;
            $api: any;
        }
    }
    

    tsconfig.json

    {
        "compilerOptions": {
            "target": "esnext",
            "module": "esnext",
            "strict": true,
            "jsx": "preserve",
            "importHelpers": true,
            "moduleResolution": "node",
            "experimentalDecorators": true,
            "esModuleInterop": true,
            "allowSyntheticDefaultImports": true,
            "sourceMap": true,
            "baseUrl": ".",
            "types": ["webpack-env", "jest"],
            "paths": {
                "@/*": ["src/*"]
            },
            "lib": ["esnext", "dom", "dom.iterable", "scripthost"]
        },
        "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "tests/**/*.ts", "tests/**/*.tsx", "src/assets/script/area.ts"],
        "exclude": ["node_modules"]
    }
    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 在VSCode中引入Vue文件时,出现「找不到模块」错误可能有多种原因。以下是几种可能的解决方案:

      1. 重新安装Vue CLI:在你的项目中,你可以使用npm或yarn来安装Vue CLI。如果之前安装成功,但是现在仍然无法导入Vue文件,可能是Vue CLI版本过低,需要更新到最新版本。

      2. 检查项目结构:确保你的Vue文件在正确的位置,没有被其他文件覆盖。如果可能,可以试着更改你的项目结构,或者把Vue文件放在其他地方。

      3. 更新VSCode:确保你的VSCode版本是最新的。有时候,旧版本的VSCode可能会出现与新的Vue版本不兼容的问题。

      4. 清除缓存:在VSCode中,你可以通过按下F12,然后选择“检查是否可用”来清除缓存。如果清除缓存后问题仍然存在,你可以尝试重启VSCode。

      5. 使用其他工具:如果以上方法都无法解决问题,你可以尝试使用其他工具,如npm或yarn的管理工具,来导入Vue文件。或者,你也可以尝试使用浏览器的Developer Tools,查看Vue的源代码,找出问题所在。

      希望这些解决方案能帮助你解决问题。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部