Articles of typescript

permettre au compilateur typescript d’appeler setState sur une seule propriété d’état de réaction

J’utilise Typescript avec React pour un projet. Le composant principal obtient l’état passé avec cette interface. interface MainState { todos: Todo[]; hungry: Boolean; editorState: EditorState; //this is from Facebook’s draft js } Cependant, le code ci-dessous (uniquement un extrait) ne sera pas compilé. class Main extends React.Component { constructor(props) { super(props); this.state = { todos: […]

Pouvez-vous spécifier plusieurs contraintes de type pour les génériques TypeScript

J’ai une interface générique comme cet exemple avec une contrainte de type unique: export interface IExample { getById(id: number): T; } Est-il possible de spécifier plusieurs contraintes de type au lieu d’une seule?

Comment définir un gestionnaire de liaison à exclure dans typescript?

J’ajoute normalement des gestionnaires de liaison knock-out personnalisés en JavaScript via ko.bindingHandlers.myBindingHandler = {…} mais maintenant je dois les append dans TypeScript via ko.bindingHandlers[“myBindingHandler”] = {…} sinon je reçois cette erreur parce que j’utilise typescript.d.ts : La propriété ‘myBindingHandler’ n’existe pas sur la valeur de type ‘KnockoutBindingHandlers’ Je n’aime pas l’approche [“property”] car je ne […]

Comment charpiller tout le dossier en utilisant tslint

Est-il possible de charrier tout le dossier en utilisant tslint? En utilisant eslint, il est possible de faire eslint ./src pour valider tout le dossier. Lorsque j’essaie de faire la même chose pour tslint – je reçois une erreur Error: EISDIR: illegal operation on a directory . Dans leurs exemples sur le site, ils montrent […]

Opérateur RxJs pipe et lettable `map`: ‘ce’ contexte de type ‘void’ n’est pas assignable à la méthode ‘this’ de type ‘Observable ‘

J’ai cet exemple très basique qui utilise une map opérateur louable avec un pipe de rxjs@5.5 : import { map } from ‘rxjs/operator/map’; let o = of(1, 2, 3, 4).pipe( map((v) => v * 2) ); Mais il produit l’erreur Error:(34, 5) TS2684:The ‘this’ context of type ‘void’ is not assignable to method’s ‘this’ of […]

webpack TS2304 Impossible de trouver le nom ‘Map’, ‘Set’, ‘Promise’

J’ai les webpack.config.js suivants var path = require(“path”); var webpack = require(‘webpack’); module.exports = { entry: { ‘ng2-auto-complete’: path.join(__dirname, ‘src’, ‘index.ts’) }, resolve: { extensions: [”, ‘.ts’, ‘.js’, ‘.json’, ‘.css’, ‘.html’] }, output: { path: path.join(__dirname, ‘dist’), filename: “[name].umd.js”, library: [“[name]”], libraryTarget: “umd” }, externals: [ /^rxjs\//, //…. any other way? rx.umd.min.js does work? /^@angular\// […]

Comment consumr des modules npm à partir de caractèrescript?

Je donne un coup à la dactylographie. Ça marche très bien sur la scène du salut. J’essaie maintenant d’utiliser un module npm: index.ts = import _ = require(‘lodash’) console.log(_.toUpper(‘Hello, world !’)) Cela ne fonctionne pas: tsc index.ts -> Cannot find module ‘lodash’. (2307) Cannot find module ‘lodash’. (2307) node-ts index.js -> Cannot find module ‘lodash’. […]

‘this’ a implicitement le type ‘any’ car il n’a pas d’annotation de type

Lorsque noImplicitThis dans tsconfig.json , j’obtiens cette erreur pour le code suivant: ‘this’ implicitly has type ‘any’ because it does not have a type annotation. class Foo implements EventEmitter { on(name: ssortingng, fn: Function) { } emit(name: ssortingng) { } } const foo = new Foo(); foo.on(‘error’, function(err: any) { console.log(err); this.emit(‘end’); // error: `this` […]

Déclarez un type de délégué dans Typescript

Venant d’un arrière-plan C #, je veux créer un type de données qui définit une signature de fonction. En C #, ceci est un delegate déclaré comme ceci: delegate void Greeter (ssortingng message); public class Foo { public void SayHi (Greeter g) { g(“Hi!”); } } Maintenant, je veux atteindre similaire dans Typescript. Je sais […]

Types primitifs typescripts: toute différence entre les types “nombre” et “nombre” (est-ce que TSC est insensible à la casse)?

Je voulais écrire un paramètre de type number , mais j’ai mal orthographié le type, en écrivant plutôt Number . Sur mon IDE (JetBrains WebStorm), le type Number est écrit avec la même couleur que celle utilisée pour le number type primitif, alors que si j’écris un nom de classe (connu ou inconnu), il utilise […]