使用ts封裝一個ajax

打个大大西瓜發表於2024-03-12

練習使用ts 的 介面

interface

/**
 * 使用TS封裝一個ajax
 */

 interface Config{
     type:string;

     url:string;

     data?:any; // 可選

     dataType:string;
 }


 function ajax(config:Config){
     let xhr = new XMLHttpRequest();

     xhr.open(config.type,config.url,true);

     xhr.send(config.data);

     xhr.onreadystatechange = function(){
         if(xhr.readyState == 4 && xhr.status == 200){
             if(config.dataType == 'json'){
                 console.log(JSON.parse(xhr.responseText))
             }else{
                 console.log(xhr.responseText)
             }
         }
     }
 }


 //使用

 ajax({
     type:'get',
     url:'localhost:3000',
     data:{name:123},
    dataType:'json'
 })

相關文章