草庐IT

learning-typescript-by-examples

全部标签

javascript - 带有 Webpack 和 Typescript 的 JQuery 插件(数据表)

我正在尝试将datatablesJQuery插件与webpack和typescript一起使用。我已经启动并运行了JQuery和打字(intelliSense工作),对于数据表我只有intelliSense,但是在我运行应用程序时构建webpack之后,代码在$('#id').dataTable()时失败行。app.js:43UncaughtTypeError:$(...).dataTable不是函数我不知道如何正确附加这个插件,谁能帮帮我?webpack.config.js如下;https://gist.github.com/marcingolenia/2fa78ed2cd42f92

javascript - 松弛传入 webhook : Request header field Content-type is not allowed by Access-Control-Allow-Headers in preflight response

我尝试在浏览器中通过fetchAPI发布slack消息:fetch('https://hooks.slack.com/services/xxx/xxx/xx',{method:'post',headers:{'Accept':'application/json,text/plain,*/*','Content-type':'application/json'},body:JSON.stringify({text:'Hithere'})}).then(response=>console.log).catch(error=>console.error);};我收到以下错误消息:FetchA

javascript - 使用 angular2 和 typescript 进行谷歌登录 - 从哪里获得 gapi?

我正在尝试通过以下问题使用angular2的google登录:GoogleSign-InforWebsitesandAngular2usingTypescript但是我得到一个错误:ORIGINALEXCEPTION:ReferenceError:gapiisnotdefinedORIGINALSTACKTRACE:ReferenceError:gapiisnotdefinedatLoginAppComponent.ngAfterViewInit(http://localhost:3000/app/login.component.js:33:9)atDebugAppView._View

javascript - TypeScript 中的深度克隆(保留类型)

我需要在TypeScript中深度克隆一个对象。这应该不是问题,因为像Lodash这样的库为此提供了适当的功能。然而,这些似乎丢弃了类型信息。>vara=newSomeClass();>ainstanceofSomeClass;varb=_.cloneDeep(a);>binstanceofSomeClass;有没有办法在保留此键入信息的同时克隆TypeScript中的对象? 最佳答案 Typescript不会在此处丢弃类型信息。在DefinitelyTypedlodash.d.ts文件,你可以看到cloneDeep被定义为clon

javascript - Lodash Flow 和 TypeScript

我一直在关注一篇关于Lodash的文章,Whyusing_.chainisamistake,它突出显示您可以使用Flow消除对链的需求.给出的例子如下使用链import_from"lodash";_.chain([1,2,3]).map(x=>[x,x*2]).flatten().sort().value();可以使用flow转换成下面的importmapfrom"lodash/fp/map";importflattenfrom"lodash/fp/flatten";importsortByfrom"lodash/fp/sortBy";importflowfrom"lodash/fp/

javascript - TypeScript 匿名函数

这个JavaScript的TypeScript等价物是什么?(function(){/*codehere*/})();我试过了()=>{/*codehere*/}但这会产生(function(){/*codehere*/});我需要最后一组额外的括号来执行匿名函数。 最佳答案 (()=>{/*codehere*/})();或者简单地使用JavaScript(同样有效的TypeScript)(function(){/*codehere*/})();...取决于您是否要使用粗箭头捕获this。Playground.

javascript - "let _self = this"在 Javascript/Typescript 中是什么意思?

这个问题在这里已经有了答案:Howdoesthe"this"keywordwork,andwhenshoulditbeused?(22个答案)WhatunderliesthisJavaScriptidiom:varself=this?(10个答案)关闭4个月前。在此codesnippet,为什么this.identifier不起作用但_self.url起作用?getConfig(){let_self=this;returnfunction(){this.page.url=this.url||window.location.href;this.page.identifier=_self.

JavaScript 性能 : Modulus operation of negative Number within decrementing loop slowing the code by more than 100%

我正在浏览EloquentJavaScript(再次)遇到练习"ChessBoard"ofChapter2.在我第一次阅读它的那天,我写了一个不错的解决方案版本,并在ElequentJavascriptwebsite提供了另一个版本的解决方案。.我是想成为super高效程序员的新手之一,他们脑子里只有一个问题:“我能让它工作得更快或更小吗?无论如何?”所以,几个月前我在网上搜索时,遇到了aquestion在StackOverflow上,关于for循环与while循环的性能比较。因为在该线程中提到for循环比while慢,而递减迭代器的循环更快,所以我重写了代码以获得更好的性能。这是新版

javascript - Typescript:如何检查 eventTarget 中的 tagName?

为什么在这种情况下:varele=document.getElementById("toolbar");ele.addEventListener("click",function(e){if(e.target.tagName==="SPAN"){console.log(e.target.tagName)}},false);VisualStudio向我显示此错误?Build:Operator'==='cannotbeappliedtotypes'HTMLElement'and'string'.Property'tagName'doesnotexistontype'EventTarget'

javascript - Backbone 和 TypeScript,一段不幸的婚姻 : Building a type-safe "get"?

我正在尝试将TypeScript与Backbone.js结合使用。它“有效”,但是Backbone的get()和set()失去了大部分类型安全。我正在尝试编写一个可以恢复类型安全的辅助方法。像这样:我会把它放在我的模型中:object():IMyModel{returnattributes;//exceptIshoulduseget(),notattributes,perdocumentation}这在消费者中:varmyVar=this.model.object().MyProperty;通过这种语法,我得到了TypeScript的知识,即MyProperty存在并且是bool,这太