vscode 写 js 报错,“此构造函数可能会转换成类声明”

2019-03-16 16:32:53 +08:00
 lzoje

vscode 提示,此构造函数可能会转换为类声明。ts(80002)

chrome 直接报错说不是一个构造函数,我看语法也没毛病呀。

function FormHandler(selector) {
    if(!selector){
        throw new ErrorEvent('No selector provided');
    }
    this.$formElement=$(selector);
    if (this.$formElement.length===0){
        throw new Error('Cloud not find element with selector: '+selector);
    }
}

请问怎么解决这个问题,网上也找不到相关资料。

6005 次点击
所在节点    JavaScript
7 条回复
ragnaroks
2019-03-16 19:02:48 +08:00
tshint
shiny
2019-03-16 19:13:03 +08:00
因为函数名首字母大写了
shiny
2019-03-16 19:17:13 +08:00
试了下不是大小写的问题,而是用了 this。删除 this 部分就没有提示了。
suzic
2019-03-16 19:40:39 +08:00
这是段纯 js 代码,为什么会有 ts 的检测呢?如果按 ts 的写法的确不标准
lzoje
2019-03-17 15:58:40 +08:00
@shiny 我这删了也没用。而且删了逻辑也破坏了啊。
lzoje
2019-03-17 16:04:01 +08:00
找到问题了,js 文件加载顺序的问题。

vscode 的那个提示可以关掉😅
Danswerme
2019-03-24 15:02:33 +08:00
@lzoje 加载顺序的问题? 我今天也遇到了,一个很简单的构造函数,也是报这个错误。改成 class 方法就好了..

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/545279

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX