Typescript VSCode不';当Vue脚本作为带有Vue类组件的单独文件导入时,t确认$refs组件类型

Typescript VSCode不';当Vue脚本作为带有Vue类组件的单独文件导入时,t确认$refs组件类型,typescript,vue.js,visual-studio-code,vue-class-components,Typescript,Vue.js,Visual Studio Code,Vue Class Components,当“*.vue”文件被分成不同的文件时,即:VSCode抛出错误;但是,脚本不提供服务。编译没有问题。错误与$refs属性有关。VSCode无法识别已注册组件的属性: 类型“Vue”上不存在属性“sideBarVisibilityChange”。 将脚本标记内的$refs声明为SFC组件时,如下所示: $refs!:{ 边栏组件:边栏; }; 然后访问方法内的边栏组件: this.$refs.sideBarComponent.sideBarVisibilityChange(newState);

当“*.vue”文件被分成不同的文件时,即:
VSCode抛出错误;但是,
脚本不提供服务。编译没有问题。错误与
$refs
属性有关。VSCode无法识别已注册组件的属性:
类型“Vue”上不存在属性“sideBarVisibilityChange”。

将脚本标记内的
$refs
声明为SFC组件时,如下所示:

$refs!:{
边栏组件:边栏;
};
然后访问方法内的边栏组件:

this.$refs.sideBarComponent.sideBarVisibilityChange(newState);
只要代码是SFC,一切正常。它在导入脚本时“中断”。错误只出现在VSCode中,这意味着当我运行
npm run service
vue cli service service
)时,不会出现错误!但是,我在VSCode
Problems
窗口中看到了这一点:
属性“sideBarVisibilityChange”在类型“Vue”上不存在。
ts(2339)

我的设置:VSCode、Vue+类型脚本、Vue类组件、Vue属性装饰器

组件已导入。它在模板中声明为
ref
。 如果您想查看以下代码:

或者我目前正在处理的整个回购协议:

我目前正在处理一些错误。他们不是这个问题的特例

非常奇怪的是,当我试图通过单击路径来跟踪从Vue文件到脚本的链接时,会出现以下奇怪的错误:

Unable to open 'script.ts': File not found (file:///f:/f:/<path>/src/views/Authorized.vue/Authorized/script.ts).
然而,这似乎不是问题所在,因为我提供了文件的整个绝对路径,使follow链接工作,但这并没有改变任何东西

以下是VSCode在开发人员控制台中抛出的错误:

Error: Tree element not found: {
    "resource": "/f:/<path>/src/views/Authorized/script.ts",
    "owner": "typescript",
    "code": "2339",
    "severity": 8,
    "message": "Property 'sideBarVisibilityChange' does not exist on type 'Vue'.",
    "source": "ts",
    "startLineNumber": 142,
    "startColumn": 31,
    "endLineNumber": 142,
    "endColumn": 54
}
    at s.getElementLocation (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:89:591)
    at s.expandTo (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:89:187)
    at $.reveal (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:925:744)
    at W.revealMarkersForCurrentActiveEditor (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4487:161)
    at W.autoReveal (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4486:961)
    at W.onActiveEditorChanged (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4484:350)
    at W._register.e (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4483:360)
    at d.fire (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:73:436)
    at setTimeout (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:69:969)
错误:未找到树元素:{
“资源”:“/f://src/views/Authorized/script.ts”,
“所有者”:“类型脚本”,
“代码”:“2339”,
“严重性”:8,
“消息”:“类型'Vue'上不存在属性'sideBarVisibilityChange'。”,
“来源”:“ts”,
“惊人数字”:142,
“startColumn”:31,
“endLineNumber”:142,
“结束栏”:54
}
在s.getElementLocation(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:89:591)
在s(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:89:187)
美元。揭示(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:925:744)
在W.revealMarkersForCurrentActiveEditor(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:4487:161)
在W.autoReveal(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:4486:961)
在W.ONACTIVEEDITOR改变(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:4484:350)
在W.U登记处(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:4483:360)
失火(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:73:436)
在设置超时时(file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/VS/workbench/workbench.main.js:69:969)
Error: Tree element not found: {
    "resource": "/f:/<path>/src/views/Authorized/script.ts",
    "owner": "typescript",
    "code": "2339",
    "severity": 8,
    "message": "Property 'sideBarVisibilityChange' does not exist on type 'Vue'.",
    "source": "ts",
    "startLineNumber": 142,
    "startColumn": 31,
    "endLineNumber": 142,
    "endColumn": 54
}
    at s.getElementLocation (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:89:591)
    at s.expandTo (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:89:187)
    at $.reveal (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:925:744)
    at W.revealMarkersForCurrentActiveEditor (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4487:161)
    at W.autoReveal (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4486:961)
    at W.onActiveEditorChanged (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4484:350)
    at W._register.e (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4483:360)
    at d.fire (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:73:436)
    at setTimeout (file:///F:/PROGRAMY/VS Code/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:69:969)