remote form
v0.4.3
وظيفة من شأنها تمكين إرسال النماذج عبر AJAX.
ستقوم الوظيفة بتقديم طلب بناءً على النموذج الذي يستخدم window.fetch
مع الحمولة المشفرة كمعلمات URL إذا كان أسلوب النموذج هو GET
و FormData
لجميع الطرق الأخرى.
كائن الطلب متاح في وظيفة رد الاتصال، مما يسمح بتعديل الرؤوس والنص قبل إرسال الطلب.
$ npm install --save @github/remote-form
import { remoteForm } from '@github/remote-form'
// Make all forms that have the `data-remote` attribute a remote form.
remoteForm ( 'form[data-remote]' , async function ( form , wants , request ) {
// Before we start the request
form . classList . remove ( 'has-error' )
form . classList . add ( 'is-loading' )
let response
try {
response = await wants . html ( )
} catch ( error ) {
// If the request errored, we'll set the error state and return.
form . classList . remove ( 'is-loading' )
form . classList . add ( 'has-error' )
return
}
// If the request succeeded we can do something with the results.
form . classList . remove ( 'is-loading' )
form . querySelector ( '.results' ) . innerHTML = response . html
} )
< form action =" /signup " method =" post " data-remote >
< label for =" username " > Username </ label >
< input id =" username " type =" text " >
< label for =" password " > Username </ label >
< input id =" password " type =" password " >
< button type =" submit " > Log in </ button >
< div class =" results " > </ div >
</ form >
تتطلب المتصفحات التي لا تحتوي على دعم العناصر المخصصة الأصلية تعبئة متعددة.
npm install
npm test
وزعت بموجب ترخيص معهد ماساتشوستس للتكنولوجيا. راجع الترخيص للحصول على التفاصيل.