收藏
回答

启用Typescript编译出现的summer-compiler异常如何处理?

在project.config.json中启用Typescript编译(根据 https://developers.weixin.qq.com/miniprogram/dev/devtools/compilets.html 修改)会引起 summer-compiler 抛异常如下:

图中的项目目前的ts代码之前都是命令行tsc手工编译,切换之后tsconfig.json没做任何修改

异常中提到的 pages/components/semaphore/semaphore.js 文件在项目中并不存在,实际路径是 /components/semaphore/semaphore.js,项目中所有的引用路径也是正确的。异常中的路径开头的 pages,目前怀疑是summer-compiler自行拼装上去的

另外根据 console log 输出,app.js 仍有执行,但首页(pages/jump/jump)文件未能正确载入。而此页面并没有引用上述自定义组件。

已做的尝试:

  1. 恢复原来的配置,仍能正常编译运行,说明组件引用路径都是正常的
  2. 尝试创建typescript模板项目,并使用类似的路径结构和tsconfig配置,能正常编译。

出问题的项目工程较大,目前上述异常给出的信息太模糊,实在无从查起。望官方至少能提供个调查思路。

环境:macOS 11.6, 开发者工具 RC 1.05.2109131

最后一次编辑于  2021-10-15
回答关注问题邀请回答
收藏

1 个回答

  • commy
    commy
    2021-10-18

    搜索一下 ` components/semaphore/semaphore ` 这个?看看哪个json文件里有使用到?

    2021-10-18
    有用
    回复 8
    • 2021-10-18
      这是个广泛使用的自定义组件,在很多页面都有使用(但在 pages/jump/jump 里没有),引用路径绝对和相对的都有
      2021-10-18
      回复
    • commy
      commy
      2021-10-18回复
      那应该是有某个页面引用这个组件的时候,相对路径写错了。检查一下?
      2021-10-18
      回复
    • 2021-10-18
      理论上不会,因为没开工具TS编译、使用tsc编译的时候没异常过……
      2021-10-18
      回复
    • 2021-10-18
      我去,还真是……有两个示例页面被列在app.json里,但从没有被用到过,里面的引用路径错了。
      小程序除TS之外的编译不对这个做检查么?
      2021-10-18
      回复
    • commy
      commy
      2021-10-18回复
      方便给个代码片段?我们看看是不是检查逻辑有遗漏?
      2021-10-18
      回复
    查看更多(3)
登录 后发表内容