元素类型中的反应片段结果是Visual Studio 2017中无效的错误



我在尝试使用react/tyscript与Visual Studio 2017使用React/Typescript的片段时遇到此错误:

NodeInvocationException:元素类型无效:预期字符串(用于内置组件(或类/函数(用于复合组件(,但Got:symble。

堆栈:

  • React 16.3
  • react-dom 16.3
  • 打字稿2.6.2

我也在使用示例代码进行测试:

public render() {
        return (
            <>
            Some text.
            <h2>A heading</h2>
            More text.
            <h2>Another heading</h2>
            Even more text.
          </>
        );
    }

我在这里发现了类似的问题。斯蒂芬·穆尔(Stephen Muhr(在他的最后一篇评论中说,他更新了他的供应商。从他的评论中,听起来他升级为16.2的升级问题。但是,对我来说,我可以验证React 16.3正在成功运行(我在运行时输出React版本(。因此,它可能无法解决我的问题。由于我是新用户,我无法对该问题进行评论。

由于该错误是服务器端错误,因此我认为我缺少指定正确版本的打字稿的配置。我使用了NPM intern typescript@2.6.2,它存在于node_modules文件夹中。我还以2.6.2下载了TypeScript SDK并安装了它。我还将项目属性设置为Typescript 2.6(并且也尝试过"使用最新"(。这些都没有工作。

我无法弄清楚如何输出运行时使用的打字稿版本。

编辑以下我的计算机上返回了不同版本的打字稿: - TSC -V 产生2.3.5。 - NPM LS -G打字稿产生2.6.2。 - NPM LS打字稿产生2.6.2。

所以,看起来TSC -V已过时,但我不知道如何更新它。

如果有人可以就可能导致此错误的原因提出任何建议,我将不胜感激。谢谢。

在您的问题中,您提到您的全局tsc在2.3.5版中。如您提到的,片段得到了2.6的支持。

您可以使用npm install -g typescript@2.6.2在全局范围内更新tsc。但是,如果您正在从Visual Studio命令提示符中运行命令,则它将从SDK文件夹中获取tsc。打字稿应安装在: C:Program Files (x86)Microsoft SDKsTypeScript

如果您使用的是.csproj。您还可以查看项目文件并查看Typescript的版本,它将在TypeScriptToolsVersion下。

最新更新