草庐IT

language-TypeScript

全部标签

javascript - 如何使用 TypeScript 将拖动事件处理程序附加到 React 组件

我正在使用TypeScript(2.4.2)首次涉足React(15.6.1),我正在尝试创建一个组件来表示可拖动的JSON字段。这是我的组件代码:import*asReactfrom"react";interfaceJsonFieldProps{name:string;type:string;indent:number;}exportclassJsonFieldextendsReact.Component{marginStyle={'text-indent':`${this.props.indent*15}px`};render(){return{this.props.name}:{

javascript - typescript 和 react-native 的 ForwardRef 错误

使用forwardRef时出现ts错误//[ts]Property'forwardRef'doesnotexistontype'typeofReact'.constMyComponent=React.forwardRef((props:Props,ref:any)=>...在ReactNative中,父组件抛出此错误:InvariantViolation:Elementtypeisinvalid:expectedastring(forbuild-incomponents)oraclass/function(forcompositecomponents)butgot:object有什么解

javascript - 导入第三方js文件到angular typescript项目

在我使用Angular的过程中,我被迫使用四种不同的方式来包含第3方库poliglot.js(对于多语言)。为了能够在我的Lang类中使用newPolyglot(...):exportclassLang{...constructor(){this.polyglot=newPolyglot({locale:'en'});...}...}我用这四种方法A.在我相当老的(2016年)angular2(基于framerworkangular2-webpack-starter)项目中(目前由于缺少require指令,该解决方案不起作用在新的Angular项目中):varPolyglot=requ

javascript - 我应该用 typescript 将我所有的 express 服务器包装在一个类中吗?

我认为自己足以胜任nodeJs。我最近决定通过开始使用Typescript进行开发来改变我的应用程序。我最近看到许多博客(likethisone)在创建RESTfulAPI时,他们将所有模块和应用程序的所有入口点包装在一个类中。它是否正确,或者我可以继续像以前一样使用typescript开发我的应用程序吗? 最佳答案 这是一个风格问题,而不是其他任何问题。但是Express不会为其单元推广OOP,并且将应用程序定义为类没有明显的好处:classApp{publicapp:express.Application;constructor

javascript - TypeScript/JSX 类型断言仅在 JSX 之外有效

我有一个通过数组映射的React组件。每个数组项都有一个可选的ID类型。如果我有这个ID,我将渲染一个元素,否则什么都不渲染。这个元素有一个onClick调用函数接受ID作为参数。即使我检查我是否有ID,TypeScript仍然提示ID可能未定义,但只在onClick方法内部,而不是外部(参见代码示例)这是为什么呢?我怎样才能让这个错误消失?PleaseseetheerrorontheTypeScriptplayground://fakebindingsdeclarenamespaceReact{functioncreateElement():any;}//Thistypehasano

javascript - grunt-typescript 不会在指定的 `dest` 中生成 js 文件

我有以下目录结构:root||_package.json|_Gruntfile.js||_javascripts/|_ts/file.ts在Gruntfile中我有这个://ProjectConfiggrunt.initConfig({pkg:grunt.file.readJSON('package.json'),typescript:{base:{src:['./javascripts/ts/*.ts'],dest:'./javascripts/'}}});我希望js文件位于javascripts/目录中。但是,当我运行grunttypescript时,它会创建这个奇怪的目录结构:r

javascript - (TypeScript) 为 Parse SDK(浏览器和 Node )创建类型定义

我正在为ParseJavascriptSDK创建一个Typescript类型定义.它实际上是完整的。该定义适用于Browse和CloudCode,但不适用于Node。在客户端和服务器端javascript中使用Parse浏览示例:varGameScore=Parse.Object.extend("GameScore");Node示例:varParse=require('parse').Parse;varGameScore=Parse.Object.extend("GameScore");Psuedue类型定义declaremoduleParse{interfaceFacebookUti

javascript - 在 TypeScript 中动态返回一个类构造函数

我正在尝试在TypeScript中构建一种机制,以根据表示类名称的字符串参数返回类的新实例。基本上,我正在尝试创建一个工厂,只是我不太清楚如何在TypeScript中执行此操作。在纯JS中,我可以通过将所有类构造函数存储在一个键/值对象中并调用newClassDictionary[className]();来解决这个问题——这不是最可靠的解决方案,但它在这种情况下工作。我似乎无法获得类型和转换的正确组合来在TypeScript中完成此操作。有没有更好的办法?我在TypeScript中找不到工厂模式的任何示例,所以现在我只有一点switch语句,它丑陋且不灵活。

javascript - 编写 TypeScript 并为浏览器和 Node 生成一个库

我有一个在Node.js和浏览器中使用的内部库。它有许多文件,与Grunt任务和不同的序言连接在一起,一个用于浏览器,一个用于Node:浏览器://dependent3rd-partylibslikeMustachearealreadyglobalwindow.myLib={/*justanamespaceobjectfilledwithstufflater*/}//thencomestheplainjavascriptwhichjustaddselementstomyLib.//ThispartisidenticaltothatusedinNode//example:myLib.re

javascript - 对于 Angular2 项目,在 gulp 中,我如何连接从 typescript 生成的所有 JavaScript 文件并将它们添加到我的 index.html 文件中

对于Angular2项目,在gulp中,我如何连接从typescript生成的所有JavaScript文件并将它们添加到我的index.html文件中。我正在使用Angular2、typescript和gulp。目前我没有连接它从typescript文件生成的javascript文件。我在尝试执行此操作并将它们添加到我的index.html文件时遇到问题。此外,完成此操作后,我需要清除缓存以使浏览器继续请求javascript文件。这是我的index.html文件:MyApp-->System.config({transpiler:'typescript',defaultJSExten