Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 13010|Atbildi: 1

[prasa] Javascrip{filter}tmodule - ielādes modulis require.js

[Kopēt saiti]
Publicēts 11.10.2017 09:31:50 | | |
Normālas JS ielādes trūkumi

Interfeisam jāsāk renderēšana pēc js ielādes
Ja starp js ir atkarības, tās ir jāielādē secībā atbilstoši atkarībām. Ja atkarības ir sarežģītas, ir apgrūtinošāk rakstīt un uzturēt kodu
tā require.js radās plašo tautas masu balsī.

require.js loma

Ieviest asinhronu js ielādi, lai izvairītos no lapas nereaģēšanas
Pārvaldiet atkarības starp moduļiem, lai atvieglotu koda rakstīšanu un uzturēšanu

require.js ielāde

Vispirms dodieties uz [oficiālo vietni] http://requirejs.org/ lejupielādētu jaunāko versiju

Ievietojiet lejupielādēto vai kopēto require.js projekta direktorijā

Ielādējiet require.js vēlamajā lapā
Tiešā ielāde: Write <scrip{filter}t src="js/require.js"></scrip{filter}t>
Asinhronā ielāde: <scrip{filter}t src="js/require.js" defer async="true" ></scrip{filter}t>
Piezīme: asinhrons nozīmē, ka šis fails ir jāielādē asinhroni, lai izvairītos no tīmekļa lapas nereaģēšanas. IE neatbalsta asinhronu, tāpēc ielādējiet atlikšanas atribūtu;
Kad require.js ir ielādēts, nākamais solis ir ielādēt savu kodu. Pieņemsim, ka mūsu pašu koda fails ir main.js, kas arī ievietots js direktorijā. Tātad, vienkārši uzrakstiet sekojošo: <scrip{filter}t src="js/require.js" data-main="js/main"></scrip{filter}t>
Datu galvenā atribūta funkcija ir norādīt tīmekļa programmas galveno moduli. Iepriekš minētajā piemērā šis fails vispirms tiks ielādēts require.js main.js zem js direktorijas. Tā kā require.js noklusējuma faila sufikss ir js, varat saīsināt main.js uz galveno.

Kā uzrakstīt galveno moduli

Iepriekšējās sadaļas main.js sauc par galveno moduli. Tas nozīmē ievades metodi visam modulim.

Kā rakstīt main.js

Metodes, kas rakstītas tieši main.js, nepaļaujoties uz citiem moduļiem
main.function()
Galvenais modulis ir atkarīgs no citiem moduļiem, tāpēc izmantojiet funkciju require()
main.js
require(['modulisA', 'modulisB', 'modulisC'], funkcija (modulisA, modulisB, modulisC){
Kods šeit
});
Funkcija require() pieņem divus parametrus:
Pirmais parametrs ir masīvs, kas attēlo moduļus, no kuriem ir atkarīgi
Otrais parametrs ir atzvanīšanas funkcija, kas tiks izsaukta pēc visu priekšpusē norādīto moduļu ielādes. Pievienotie moduļi tiek nodoti parametru veidā, lai tos varētu izmantot atzvanīšanas funkcijā.

Moduļu ielāde

Piemērs: Ja galvenā moduļa (main.js) atkarīgais modulis ir ['jquery', 'crypto-js', 'jebkas']

Ielāde pēc noklusējuma
Ja šo trīs atkarīgo moduļu faili ir jquery.js, crypto-js.js, anything.js un main.js vienā direktorijā, tos var automātiski ielādēt saskaņā ar iepriekšējo sadaļu
Konfigurācijas ielāde require.config()
require.config() ir rakstīts galvenā moduļa (main.js) galvā.


Kā tiek rakstīti AMD moduļi

require.js ielādēts modulis, izmantojot AMD specifikāciju. Tas nozīmē, ka modulis ir jāraksta saskaņā ar AMD noteikumiem.
Konkrēti, moduļi ir jādefinē ar īpašu define() funkciju. Ja modulis nav atkarīgs no citiem moduļiem, to var definēt tieši funkcijā define()
Pieņemsim, ka tagad ir math.js fails, kas definē matemātikas moduli. Tad math.js raksta:

Tālāk ir aprakstīts, kā ielādēt.


Ja modulis ir atkarīgs arī no citiem moduļiem, tad funkcijas define() pirmajam argumentam jābūt masīvam, kas norāda moduļa atkarības.

Kad funkcija require() ielādē iepriekš minēto moduli, tā vispirms ielādēs myLib.js failu.

Ielādējiet moduļus, kas nav AMD

Tirgū ir daudz moduļu, kas neatbilst AMD specifikācijai, require.js var ielādēt
Pirms šos moduļus var ielādēt, tie ir jāiestata uz require.config(), lai definētu dažas no to īpašībām
Piemēram, noamd.js un noamddeps.js abi moduļi nav AMD moduļi, un, ja vēlaties tos ielādēt, jums ir jādefinē to īpašības:

require.js pieņem konfigurācijas objektu, kuram papildus rekvizītam paths ir arī shim rekvizīts, kas īpaši paredzēts moduļu, kas nav AMD, konfigurēšanai.
Konkrēti, katrs modulis definē:
- eksporta vērtība (izejas mainīgā nosaukums): norāda moduļa nosaukumu, kad tas tiek izsaukts ārēji
- deps masīvs: norāda šī moduļa atkarības
Piemēram, jQuery spraudni var definēt šādi:


require.js spraudnis

require.js piedāvā arī virkni spraudņu, kas ievieš dažas īpašas funkcijas
Domready spraudnis ļauj atzvanīšanas funkcijai darboties pēc lapas DOM struktūras ielādes:


Teksta un attēlu spraudņi, kas ļauj require.js ielādēt teksta un attēlu failus:


Līdzīgi spraudņi ietver JSON un MDOWN JSON un Markdown failu ielādei.





Iepriekšējo:Hahahahaha
Nākamo:Baidu koordinātas tiek konvertētas uz WGS84 koordinātām
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com