【讨论】强制严格模式,代码自由何在?

从2.x升级到了3.x,一上来就是一堆报错,其中最多的就是关于代码不符合严格模式的报错,然后我尝试过修改tsconfig.cocos.json,但是每次重启编辑器都会直接写入默认配置,就算我把tsconfig.json内的"extends":去掉后启动编辑器一样会报错,编辑器强制严格模式,强制默认配置,并且无法更改!

导致正常报错无法展示,因为代码不合符严格模式而直接加载失败,而直接运行预览也会出现下面的报错

虽然tsconfig.json内可以自由配置,但丝毫不影响预览脚本,只会影响代码编辑器内的提示而已,这不就变相的让我们全部使用严格模式?非要写臭长代码?

1赞

说好的为了简便快速开发就有了脚本语言js,然后兜兜转转现在又被微软拉到ts了.

js到ts本就是优胜劣汰,这个严格模式连个web项目都可以自己配置,creator就不行,强制用编辑器的配置

有那么夸张吗?改成这样不就关掉了。

{
    /* Base configuration. Do not edit this field. */
    "extends": "./temp/tsconfig.cocos.json",
    /* Add your custom configuration here. */
    "compilerOptions": {
      "strict": false
    }
  }

有这么简单就好了,请你看完上面的话,早就试过了

我也是2.x工程升级上来的。

很简单,把下面代码放进任意脚本内,你看看编辑器报错不

module test {
    export let a = 0;
}

模块内不允许导出非const变量是严格模式下的规则,非严格模式则不会报错,且tsconfg内的配置不能影响tsconfig.cocos.json

还真是。模块内不允许导出非const的情况,我碰到过。

还是老老实实按引擎的规范来吧。据说他们引擎后面还打算搞ts编译到c,如果真是这样,后面语法会越来越严格。

C的语法都没开了严格模式的ts严格

给我整笑了.哈哈

该更新插件了 …

团队工作,如果都是自己码随便整

用了一段时间,关于语法的,发现只有模块内导出变量的时候,以及存在未导出枚举的时候会报错,其他时候都和原来一样,应该是开启了项目设置里面宽松模式的原因