问题标签 [vetur]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1700 浏览

vue.js - HTML 结束标签不在 Vue 模板中的片段中

我对 Vue Js(节点版本 v10.16.3)和(NPV 版本 6.9.0)非常陌生在此处输入图像描述 ,我不知道如何解决 HTML 片段问题。

我安装了 Vetur 0.22.2 和 VueCSCodeSnippets 1.8.0 但是当我输入结束/结束标签时仍然没有出现。我需要输入

但是,如果我键入 then 之后,或者如果我键入结束标记的其余部分,则自动出现。

0 投票
1 回答
163 浏览

vue.js - 验证 vue html/template 中的脚本引用

我正在使用什么

  • VSCode
  • 类星体 (Vue)
  • 打字稿
  • eslint/@typescript-eslint
  • 更漂亮 / prettierhtml / Vetur

目前的问题:

<template>直到最近,在vue 文件中注入的脚本(例如onSignIn<div @click="onSignIn">已针对该部分中的可用变量/方法检查了 in <script lang="ts">。这现在已经停止工作,我无法弄清楚是什么原因。玩 VSCode/Vetur/eslint 设置是到目前为止也没有成功。

由于上述方法之前也没有工作,但就在我开始我的最新项目之后,我不确定是什么设置负责该部分(VetursHTML > Validate > Scripts显然还不够),我的第一个问题是,它是否适合你; 第二,如果你确切地知道为什么/为什么不(?)。

0 投票
2 回答
581 浏览

vue.js - 如何在 VS Code 中将光标快速移动到 Vue 方法、计算、数据?

我已经尝试在 VSCode 中使用符号资源管理器(CTRL+P 然后写@)。它允许我跳转到数据(因为它是一种方法),但它不会跳转到“计算:”或“方法:”等普通属性?

这在例如时很有用。我看着我的组件并想“啊哈!我需要添加一个计算,所以让我们跳到计算”。我可以只是 CTRL+F 但如果另一个变量或注释在其名称中已“计算”,则有时这不起作用

0 投票
2 回答
4712 浏览

vue.js - 如何使用 eslint 在所有导入中强制 .vue 扩展?

在带有Vetur的VS Code (使用 Vue 的扩展)中,“转到定义”不适用于最后没有.vue扩展的组件导入(Vetur 常见问题解答链接

import我想知道是否有一个 eslint 规则会强制用户在文件中使用语句时始终提供扩展名.vue

例子:

  • ✔️ 这有效:

    右键单击HelloWorld并按下Go to definitionVS Code 将带您进入该HelloWorld.vue文件。

  • ❌ 这不会:

    如果您按下Go to definitionHelloWorld最左侧),VS Code 只会将光标移动到HelloWorld您刚刚右键单击的位置。预期的行为是我们移动到HelloWorld.vue文件。

0 投票
1 回答
1431 浏览

typescript - 如何解决 vue-typescript 中混入的 linter 问题?

情况:


我有一个项目,我正在尝试为其创建 mixin,并且 mixin 中的方法与来自组件和其他方法的数据发生反应。我从 veture 收到所有组件的错误,指出组合的 vue 实例上不存在该方法。代码有效,我可以看到 mixins 有效,但我很好奇我应该怎么做才能摆脱我在项目中看到的 linting 错误。我在 vscode 中看到 Vetur 对代码的投诉,但是,我也在控制台中看到对 ts-lint 的投诉。

问题和期望

是什么导致了这些错误,我该如何解决?对于使用相同代码的组件,它会多次弹出,我认为 mixins 对于可重用代码来说是一个好主意,但它变得很麻烦。

详细信息和代码

使用 Mixin 的 Vue 组件代码

Vetur 错误截图

屏幕错误截图

控制台中出现 tsLint 错误的屏幕截图

在此处输入图像描述

0 投票
0 回答
281 浏览

typescript - Webstorm 中的 Vue.js 和 TypeScript 类型检查模板

是否可以像在 Visual Studio Code 中一样通过 Vetur 对 Webstorm 中的 Vue 模板进行类型检查? 维特尔

0 投票
2 回答
529 浏览

vue.js - 在同一个 .gql 文件中使用多个查询时出现 Vetur 错误

我正在使用带有 GraphQL 的 Vue typeScript。每当我尝试使用解构器使用查询时,我都会从 Vetur 收到错误消息。我可以在 Vue 组件中使用 GetPostData 查询,并且工作正常。

尝试使用它 - https://github.com/apollographql/graphql-tag#support-for-multiple-operations

在此处输入图像描述

Vue文件

获取页面数据.gql

Vue.config.js

0 投票
0 回答
251 浏览

typescript - 使用 Vue + Typescript 和 Vue 组件时的类型推断

我有一个 .vue 组件,它正在被导入另一个 .vue 组件/SFC 或任何你想称呼它的东西。使用 Stencil/React,您可以使用 JSX/TSX 创建组件,当导出特定组件时,您将获得一个定义文件,该文件将为您提供 typescript 推断特定组件使用的道具所需的信息。

我没有写其余的代码,因为这是不言自明的(我希望 :))

我想要的是当我尝试做的时候:

它应该抛出一个编译错误/IDE会出错,或者其他什么。我不想依赖 Vue 运行时告诉我我在那里插入了一个数字而不是一个字符串。我也不想写依赖于为 Vetur 编写 .json 文件,例如基于它来读取和自动完成。

有了这些限制,Vue 和工具的当前状态,这可能吗?也许只更改为 Vue + TSX ?此外,如果您知道 TSX + Vue 的任何可靠入门者,那就太棒了。

谢谢!

0 投票
1 回答
847 浏览

vue.js - Visual Studio Code 使用双引号格式化代码,尽管 linter 代码样式需要单引号

我正在使用 NestJs 和 VueJs 进行开发,并使用通过 CLI 配置的代码样式。所以 Nest 在 TSLint 中使用了自己的代码风格,而对于 VueJs,我想使用 AirBnb 代码风格。

基于我当前的 VSC 扩展设置

我使用 ESLint、Vetur 和 Prettier 的设置如下

不幸的是,VSC 将我的 Javascript 代码从单引号更新为双引号。我想根据配置的代码样式格式化我的代码,无论它是普通的 NodeJs、NestJs、Angular、React、Vue,......

有人介意告诉我如何正确设置编辑器吗?

0 投票
2 回答
1488 浏览

vue.js - 如何告诉 VScode 将文件类型 A 格式化为文件类型 B,同时保留语法高亮显示?

我遇到了这个问题: 如何在 VScode 中格式化 .vue 文件时保留空行?

我通过告诉 VScode(右下角)一个 .vue 文件应该格式化为一个 .html 文件来解决它。

这解决了格式问题,但我丢失了 html 标记中 vue 属性的语法高亮显示。

我需要让 VScode 将文件类型 .vue 格式化为 .html,同时保留语法突出显示。

怎么可能呢?

.vue 的语法高亮来自扩展。

我尝试了 Vetur 扩展和 vue-beautify 扩展。他们突出显示了语法,但没有正确格式化 .vue 文件(至少对我来说)

在尝试在 VScode 的全局 settings.json 中添加以下行

但这对他们俩都不起作用。

Vetur 只是忽略了设置并按照 Prettier 规则格式化了 .vue 文件。(您无法在 Vetur 设置中更改)

在使用 vue-beautify 时,没有为 .vue 文件安装格式化程序。尽管我明确指定要使用 HTML 格式化程序中的构建。

如何强制 VScode 为 .vue 文件使用内置的 HTML 格式化程序,同时仍然使用“Vetur”或“vue-beautify”提供的所有其他功能?

或者

如何告诉“Vetur”或“vue-beautify”扩展的“Prettier-html”模块保留空换行符?

更新:-尝试“unibeautify”..但不支持 vue 的“preserve-max-newlines”功能-和“美化”-根本不支持 vue。- 和 "pretier" - 不支持 vue 的 "preserve-max-newlines"