VS Code 中的虚假错误

问题描述 投票:0回答:1

我正在编写 Tera 代码。

{% extends "base" %}

{% block content %}
<main>
    <h1>{{ title }}!</h1>
    <div class="telkiniu-sarasas">
        <div class="row">
            <div class="telkinio-pavadinimas headeris">Pavadinimas</div>
            <div class="telkinio-adresas headeris">Adresas</div>
        </div>
        {% for telkinys in telkiniai %}
        <div class="row" onclick="telkinys( {{ telkinys.id }} )">
            <div class="telkinio-pavadinimas">{{ telkinys.pavadinimas }}</div>
            <div class="telkinio-adresas">{{ telkinys.adresas }}</div>
        </div>
        {% endfor %}
    </div>
</main>
{% endblock content %}

我在 javascript 代码上遇到了 3 个错误

<div class="row" onclick="telkinys( {{ telkinys.id }} )">

仅 html 行没有问题。 但运行代码一切都按预期工作。因为

{{ telkinys.id }}
被替换为数字

<div class="row" onclick="telkinys( 1 )">

如何从 VS Code 中删除错误消息?我认为 VS Code 将 Javascript 内的 Tera 代码解释为 Javascript 代码。而且 VS Code 不知道它会被数字替换。

我想不出有什么办法可以解决它。

附注 搜索后我发现.tera与HTML相关联,所以我打开设置 - >扩展 - > HTML 并在这里进行了搜索。找到两个地点: HTML > 格式:缩进车把 未选择格式和缩进 {{#foo}} 和 {{/foo}},因此我选择了它并收到有关错误索引或其他内容的错误(但我使用的不是 Handlebars,而是 Tera,所以它可能对我没有影响代码)。

第二: HTML > 格式:模板 尊重 django、erb、handlebars 和 php 模板语言标签。 选择这个也出现同样的错误。而且这也没有 Tera。

但没有成功:)

javascript tera
1个回答
0
投票

我找到了解决问题的方法。 Tera 模板基于 Jinja2,因此我从 VS Code 中删除了 Tera 扩展并添加了“Better Jinja”扩展。 之后,我使用这个答案将 .tera 扩展名关联到 jinja https://stackoverflow.com/a/51228725/3857286

现在我有了很好的语法突出显示,并且 javascript 代码中的 tera 标签没有问题。

© www.soinside.com 2019 - 2024. All rights reserved.