cari

Pemfaktoran semula Ajax merujuk kepada meningkatkan kualiti dan prestasi perisian dengan melaraskan kod program tanpa mengubah fungsi sedia ada perisian, menjadikan model reka bentuk dan seni bina program lebih munasabah, dan meningkatkan kebolehskalaan perisian. dan kebolehselenggaraan; pelaksanaan Ajax bergantung terutamanya pada objek XMLHttpRequest Memandangkan contoh objek ini akan dimusnahkan selepas pemprosesan acara selesai, ia mesti dibina semula apabila ia perlu dipanggil.

apakah itu ajax refactoring

Persekitaran pengendalian artikel ini: sistem windows10, versi javascript1.8.5&&&html5, komputer Dell G3.

Apakah itu ajax refactoring

Refactoring adalah untuk meningkatkan kualiti dan prestasi perisian dengan melaraskan kod program tanpa mengubah fungsi sedia ada perisian dan seni bina program ini lebih munasabah, meningkatkan kebolehskalaan dan kebolehselenggaraan perisian.

Objek teras Ajax ialah XMLHttpReguest, yang bermaksud bahawa apabila kita berinteraksi dengan pelayan melalui Ajax, kita mesti membina objek XMLHttpRequest.

Tetapi apabila halaman berinteraksi dengan pelayan melalui Ajax, objek XMLHttpReguest akan dimusnahkan selepas interaksi.

Jadi halaman kami berinteraksi dengan pelayan melalui Ajax sekali lagi, dan kami perlu membina semula objek XMLHttpRequest.

Kemudian apabila mencipta objek XMLHttpReguest, kita perlu mempertimbangkan keserasian pelayar, jadi penciptaan XMLHttpReguest juga sangat menyusahkan dan perlu dibuat dengan cara yang berbeza mengikut jenis pelayar yang berbeza.

Jadi, jika kita menggunakan teknologi Ajax pada banyak halaman, kita perlu mencipta objek ini dalam banyak halaman, yang tidak mencerminkan OO (gaya berorientasikan objek, Penggunaan Semula kod), penggunaan semula kod penyokong berorientasikan objek, jadi kami biasanya merangkum objek XMLHttpReguest dan beberapa kaedah biasa untuk memproses permintaan Ajax melalui pembinaan semula Ajax, maka kami boleh merujuk secara langsung objek ini untuk mencapai penggunaan semula kod dan menjimatkan masa penciptaan objek ini

Langkah pembinaan semula Ajax

1) Buat fail JS yang berasingan, bernama AjaxRequest.js, dan tulis kod yang diperlukan untuk membina semula Ajax dalam fail ini

2) Sertakan fail AjaxRequest.js yang baru dibuat

dalam halaman di mana Ajax perlu digunakan 3) Tulis kaedah pengendalian ralat, kaedah instantiasi dan fungsi panggil balik objek Ajax dalam halaman yang menggunakan Ajax

Dalam halaman jsp atau html, kami menulis Kod skrip JavaScript, maka kita boleh Tulis kod skrip JavaScript terus di dalamnya. Anda juga boleh menggunakan kaedah lain: buat fail js, dan kemudian perkenalkan fail js ini ke dalam halaman jsp atau html yang kami tulis

Contohnya adalah seperti berikut:

(1) Buat fail JS berasingan bernama AjaxRequest.js, dan tulis kod yang diperlukan untuk membina semula Ajax dalam fail ini.

 var net = new Object();    //创建一个全局变量net
 //编写构造函数
 net.AjaxRequest = function(url,onload,onerror,method,params){
     this.req = null;
     this.onload = onload;
     this.onerror = (onerror) ? onerror : this.defaultError;
     this.loadDate(url,method,params);
 }
 //编写用于初始化XMLHttpRequest对象并指定处理函数,最后发送HTTP请求的方法
 net.AjaxRequest.prototype.loadDate = function(url,method,params){
     if(!method){
         method = "GET";
     }
     if(window.XMLHttpRequest){
         this.req = new XMLHttpRequest();
     }else if(window.ActiveXObject){
         this.req = new ActiveXObject("Microsoft.XMLHTTP");
     }
     if(this.req){
         try{
             var loader = this;
             this.req.onreadystatechange = function(){
                 net.AjaxRequest.onReadyState.call(loader);
             }
             this.req.open(method,url,true);    //建立对服务器的调用
             if(method == "POST"){              //如果提交方式为POST
                 this.req.setRequestHeader("Content-Type",
                     "application/x-www-form-urlencoded");   //设置请求头
             }
             this.req.send(params);    //发送请求
         }catch(err){
             this.onerror.call(this);
         }
     }
 
 }
 //重构回调函数
 net.AjaxRequest.onReadyState = function(){
     var req = this.req;
     var ready = req.readyState;
     if(ready == 4){               //请求完成
         if(req.status == 200){    //请求成功
             this.onload.call(this);
         }else{
             this.onerror.call(this);
         }
     }
 }
 //重构默认的错误处理函数
 net.AjaxRequest.prototype.defaultError = function(){
     alert("错误数据\n\n回调状态:"+this.req.readyState+"\n状态:"+this.req.status);
 }

(2) Gunakan pernyataan berikut dalam halaman di mana Ajax perlu digunakan, termasuk fail JS yang dibuat dalam (1)

<script language="javascript" src="AjaxRequest.js"></script>

(3) Dalam halaman di mana Ajax digunakan Tulis kaedah pengendalian ralat, kaedah untuk membuat instantiating objek Ajax, dan fungsi panggil balik.

 <script language="javascript">
 /*********************错误处理的方法******************/
     function onerror(){
         alert("您的操作有误!");
     }
 /*********************实例化Ajax对象的方法************/
     function getInfo(){
         var loader = new net.AjaxRequest("getInfo.jsp?nocache="+new Date().getTime(),
             deal_getInfo,onerror,"GET");
     }
 /*********************回调函数************************/
     function deal_getInfo(){
         document.getElementById("showInfo").innerHTML=this.req.responseText;
     }
 </script>

[Cadangan tutorial berkaitan: Tutorial video AJAX]

Atas ialah kandungan terperinci apakah itu ajax refactoring. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Integrasi HTML dan React: Panduan PraktikalIntegrasi HTML dan React: Panduan PraktikalApr 21, 2025 am 12:16 AM

HTML dan React boleh diintegrasikan dengan lancar melalui JSX untuk membina antara muka pengguna yang cekap. 1) Benamkan elemen HTML menggunakan JSX, 2) mengoptimumkan prestasi rendering menggunakan DOM maya, 3) mengurus dan menjadikan struktur HTML melalui komponen. Kaedah integrasi ini bukan sahaja intuitif, tetapi juga meningkatkan prestasi aplikasi.

React dan HTML: Memberi data dan acara pengendalianReact dan HTML: Memberi data dan acara pengendalianApr 20, 2025 am 12:21 AM

React dengan cekap menjadikan data melalui negeri dan prop, dan mengendalikan peristiwa pengguna melalui sistem peristiwa sintesis. 1) Gunakan UseState untuk menguruskan keadaan, seperti contoh kaunter. 2) Pemprosesan acara dilaksanakan dengan menambahkan fungsi dalam JSX, seperti klik butang. 3) Atribut utama diperlukan untuk membuat senarai, seperti komponen todolist. 4) Untuk pemprosesan borang, useState dan E.PreventDefault (), seperti komponen bentuk.

Sambungan backend: bagaimana reaksi berinteraksi dengan pelayanSambungan backend: bagaimana reaksi berinteraksi dengan pelayanApr 20, 2025 am 12:19 AM

React berinteraksi dengan pelayan melalui permintaan HTTP untuk mendapatkan, menghantar, mengemas kini dan memadam data. 1) Operasi Pengguna mencetuskan peristiwa, 2) Memulakan permintaan HTTP, 3) Respons Pelayan Proses, 4) Kemas kini Status Komponen dan Re-Render.

React: memberi tumpuan kepada antara muka pengguna (frontend)React: memberi tumpuan kepada antara muka pengguna (frontend)Apr 20, 2025 am 12:18 AM

React adalah perpustakaan JavaScript untuk membina antara muka pengguna yang meningkatkan kecekapan melalui pembangunan komponen dan DOM maya. 1. Komponen dan JSX: Gunakan sintaks JSX untuk menentukan komponen untuk meningkatkan intuitif dan kualiti kod. 2. 3. Pengurusan dan cangkuk negeri: cangkuk seperti useState dan useeffect memudahkan pengurusan negeri dan pengendalian kesan sampingan. 4. Contoh penggunaan: Dari bentuk asas kepada pengurusan negara global yang maju, gunakan Contextapi. 5. Kesilapan dan penyahpepijatan biasa: Elakkan masalah pengurusan dan komponen yang tidak betul, dan gunakan ReactDevTools untuk debug. 6. Pengoptimuman prestasi dan optimum

Peranan React: frontend atau backend? Menjelaskan perbezaanPeranan React: frontend atau backend? Menjelaskan perbezaanApr 20, 2025 am 12:15 AM

ReactIsafrontendLibrary, FocusedonBuildingUserInterfaces.itmanagesuistateandupdateseficientlyusingvirtualdom, andinteractswithBackendservicesviaapisfordatahandling, butdoesnotprocessoredataveLF.

Bertindak balas dalam HTML: Membina antara muka pengguna interaktifBertindak balas dalam HTML: Membina antara muka pengguna interaktifApr 20, 2025 am 12:05 AM

React boleh tertanam dalam HTML untuk meningkatkan atau menulis semula halaman HTML tradisional. 1) Langkah -langkah asas untuk menggunakan React termasuk menambah div akar dalam HTML dan menjadikan komponen React melalui reactDom.render (). 2) Aplikasi yang lebih maju termasuk menggunakan UseState untuk menguruskan negeri dan melaksanakan interaksi UI yang kompleks seperti kaunter dan senarai tugasan. 3) Pengoptimuman dan amalan terbaik termasuk segmentasi kod, pemuatan malas dan menggunakan React.Memo dan Usememo untuk meningkatkan prestasi. Melalui kaedah ini, pemaju boleh memanfaatkan kuasa bertindak balas untuk membina antara muka pengguna yang dinamik dan responsif.

React: asas untuk pembangunan frontend modenReact: asas untuk pembangunan frontend modenApr 19, 2025 am 12:23 AM

React adalah perpustakaan JavaScript untuk membina aplikasi front-end moden. 1. Ia menggunakan komponen dan maya DOM untuk mengoptimumkan prestasi. 2. Komponen menggunakan JSX untuk menentukan, menyatakan dan atribut untuk menguruskan data. 3. Cangkuk memudahkan pengurusan kitaran hidup. 4. Gunakan Contextapi untuk menguruskan status global. 5. Kesilapan biasa memerlukan kemas kini status debugging dan kitaran hayat. 6. Teknik pengoptimuman termasuk memoisasi, pemisahan kod dan menatal maya.

Masa Depan React: Trend dan Inovasi dalam Pembangunan WebMasa Depan React: Trend dan Inovasi dalam Pembangunan WebApr 19, 2025 am 12:22 AM

Masa depan React akan memberi tumpuan kepada pembangunan komponen utama, pengoptimuman prestasi dan integrasi yang mendalam dengan susunan teknologi lain. 1) React akan memudahkan penciptaan dan pengurusan komponen dan mempromosikan perkembangan komponen utama. 2) Pengoptimuman prestasi akan menjadi tumpuan, terutamanya dalam aplikasi besar. 3) React akan disepadukan dengan teknologi seperti GraphQL dan TypeScript untuk meningkatkan pengalaman pembangunan.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini