Introduisez le module js dans le fichier ts et écrivez la méthode du fichier de déclaration

 1. Le rôle du document déclaratif

Introduisez le fichier js dans le fichier ts. Puisqu'il n'y a pas de contrainte de type dans le code js, ts ne peut pas obtenir les informations de type du code js, puis déduire implicitement que le type dans js est any, ce qui perd le rôle du code ts type inférence et contrainte, et déclare le fichier Il s'agit de déclarer toutes les variables, fonctions et classes exposées au monde extérieur dans un module js en utilisant la syntaxe ts, afin que le compilateur ts puisse obtenir le fichier js après avoir détecté le fichier de déclaration (comme tant qu'il est détecté et écrit n'importe où) Tapez les informations correspondant aux variables, fonctions et classes dans


2. Comment rédiger le document de déclaration

1. Le code *.js qui doit être importé

/*test.js*/
//导出变量
export const test1 = '变量'
//导出函数
export function test2(name){
    return name
}
//导出类
export class Test3{
    name='类'
    constructor(){
        console.log(this.name);
    }
}

2. Code de déclaration *.d.ts du code js

/*test.d.ts*/
//声明模块(被匹配的文件都属于该模块)
declare module '*/test.js'{
    //声明变量类型
    export const test1:string
    //声明函数类型
    export function test2(name:string):string

    //声明class接口
    interface Tests{
        name:string
        //new()代表构造函数
        new():Tests
    }
    //声明class类型
    export const Test:Tests;
}

3. Importez le fichier ts

/*test.ts*/
import { test1,test2,Test } from './test.js'

console.log(test1);
console.log(test2('函数'));
new Test()

4. Résultats en cours d'exécution

3. Configuration du fichier de déclaration

Le fichier de déclaration doit être récupéré par ts. Si le fichier de déclaration ne prend pas effet, il doit être ajouté au fichier tsconfig.json

{
  "include": ["*/*.ts"] //需要检索的文件位置
}

Détails :
Introduction · Fichier de déclaration · Réseau chinois TypeScript · TypeScript——un sur-ensemble de JavaScript

Je suppose que tu aimes

Origine blog.csdn.net/z1625000762/article/details/127346324
conseillé
Classement