草庐IT

make_new_type

全部标签

javascript - Typescript 中的 new() 是什么?

在官方文档中遇到了new()here关于泛型。这里是代码上下文:functioncreate(c:{new():T;}):T{returnnewc();}上面的代码被转译成下面的JavaScript代码:functioncreate(c){returnnewc();}new()是JavaScript中的非法语法。在TypeScript中它是什么意思?此外,{new():T;是做什么的?}是什么意思?我知道它一定是一种类型,但如何呢? 最佳答案 new()描述了typescript中的构造函数签名。这意味着它描述了构造函数的形状。以{

javascript - 错误 TS7017 : Index signature of object type implicitly has an 'any' type in form validation angular 2

我在给出的Angular2中进行响应式(Reactive)验证时遇到编译错误errorTS7017:Indexsignatureofobjecttypeimplicitlyhasan'any'type为了this.comErrors[field]='';constmessages=this.validationMessages[field];this.comErrors[field]+=messages[key]+'';它正在按应有的方式运行,但是当我尝试运行npmrunbuild.prod时,出现错误并且无法构建我的项目这是我的代码:onValueChanged(data?:any)

javascript - 错误 TS2315 : Type 'ElementRef' is not generic material angular

在项目中添加AngularMaterial时出错ERRORinnode_modules/@angular/material/button-toggle/typings/button-toggle.d.ts(136,20):errorTS2315:Type'ElementRef'isnotgeneric.node_modules/@angular/material/button-toggle/typings/button-toggle.d.ts(154,104):errorTS2315:Type'ElementRef'isnotgeneric我正在尝试安装MaterialDesign,但

javascript - Swagger 'GET' 请求总是以 text/html 形式返回 Accept type on response 而不是 application/json

我有一个使用SwaggerUI的swagger标签文档,它总是返回text/html但它应该返回application/json。POST请求和所有其他类型都返回application/json但这个特定的GET请求不会。服务端点代码正确。如果我将请求更改为POST,它会作为application/json返回。所以它只是在swagger中键入GET,它不会返回正确的类型。有没有想过如何更正UI中的调用以使用application/json?这是最近从swagger站点下载的swagger版本2.1.4。"/bankName":{"get":{"summary":"BankNameSe

javascript - 是否可以通过鼠标单击 <input type=text> 元素来 dispatchEvent()?

基本上,我尝试使用以下代码将自定义的鼠标单击事件分派(dispatch)到文本输入元素(参见jsFiddle):functionsimulateClick(id){varclickEvent=document.createEvent("MouseEvents");clickEvent.initMouseEvent("click",true,true,window,1,0,0,0,0,false,false,false,false,0,null);varelement=document.getElementById(id);element.dispatchEvent(clickEvent

javascript - 即使忘记了 `new`,我什么时候应该自动创建一个对象?

假设我有以下对象构造函数:functionFoo(bar){this.bar=bar;}如果我在没有new关键字的情况下在全局范围内运行函数,那么bar将被设置在调用Foo()的任何范围内在:varfoo=Foo(42);console.log(bar);//42console.log(foo.bar);//ERROR所以我的想法是做这样的事情:functionFoo(bar){if(!(thisinstanceofFoo)){//returnaFooobjectreturnnewFoo(bar);}this.bar=bar;}那样的话,如果我执行newFoo(42)或Foo(42),

javascript - 为什么不带括号调用 new Date?

这个问题在这里已经有了答案:Canweomitparentheseswhencreatinganobjectusingthe"new"operator?(6个答案)关闭6年前。我刚刚在不小心打开Gmail中的开发工具时看到了这个片段:varGM_TIMING_END_CHUNK1=(newDate).getTime();我通常会期待这样的事情,因为不带括号调用构造函数是相当不常见的(至少我直到现在才见过它):varGM_TIMING_END_CHUNK1=newDate().getTime();或varGM_TIMING_END_CHUNK1=Date.now();//newerbro

javascript - 使用 "new RegExp"和使用正斜杠符号创建正则表达式有什么区别?

使用newRegExp("regex");和/same_regex/来测试目标字符串有什么区别吗?我问这个问题是因为我在使用这两种方法时得到了不同的验证结果。这是我用来验证电子邮件字段的片段:varemail="didxga@gmail.comblah@foo.com";varregex1=newRegExp("^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$");v

javascript - 对使用 `map` 创建的数组上 `new` 的行为感到困惑

这个问题在这里已经有了答案:UndefinedvaluesinArray(len)initializer(5个答案)关闭7年前。我对mapping一个用new创建的数组的结果感到困惑:functionreturnsFourteen(){return14;}vara=newArray(4);>[undefinedx4]inChrome,[,,,,]inFirefoxa.map(returnsFourteen);>[undefinedx4]inChrome,[,,,,]inFirefoxvarb=[undefined,undefined,undefined,undefined];>[und

javascript - 如何使用类型缺少调用或构造签名的表达式解析 ' error TS2351: Cannot use ' new'?

我正在将一个名为Auth.js的.js文件(所以不是.ts文件)导入到我的reactjs和typescript应用程序中,所以在我的组件中我有这个:import*asAuthfrom'../Auth/Auth';..constauth=newAuth();这是我的Auth.js的一部分:exportdefaultclassAuth{auth0=newauth0.WebAuth({domain:AUTH_CONFIG.domain,clientID:AUTH_CONFIG.clientId,redirectUri:AUTH_CONFIG.callbackUrl,audience:`htt