StencilJS组件开发遇TypeScript错误:JSX元素'div'无对应闭合标签
解决StencilJS中TypeScript误报“JSX元素未闭合”的问题
先修正JSX注释格式:你代码里用了HTML风格的
<!-- ... -->注释,但JSX要求使用JavaScript块注释格式{/* ... */}。HTML注释会被JSX解析器识别为普通文本节点,打乱标签结构的解析逻辑,导致TypeScript误判div标签未闭合。把注释改成{/* Other nested elements and components */}试试。排查隐藏字符或编码问题:如果改了注释还是报错,把
<div class="container gl-column">这行代码删掉,手动重新输入一遍——避免复制粘贴带来的不可见特殊字符(比如全角空格、异常换行符)干扰解析器工作。升级依赖版本:部分旧版本的StencilJS和TypeScript存在JSX解析的兼容性bug。尝试升级Stencil到最新稳定版(执行
npm install @stencil/core@latest),同时确保TypeScript版本符合Stencil官方的兼容要求。排查其他语法错误:组件内其他位置的语法错误(比如括号不匹配、箭头函数写法错误、自定义组件属性绑定问题)也可能导致解析器连锁报错。可以临时移除
<e-footer>组件,观察错误是否消失,逐步缩小排查范围。
内容的提问来源于stack exchange,提问作者WebDevDemon
相关产品推荐
相关产品推荐

