In RKWard-plugins kunt u gemakkelijk een scriptbestand in een ander includen (insluiten, opnemen). De waarde hiervan is onmiddellijk duidelijk, indien gedeelten van uw JS-code in plugins met elkaar overeenkomen. U definieert eenvoudig die gedeelten in een apart .js
-bestand, en neemt die op in al die .js
-bestanden van de plugins. Bijvoorbeeld, zoals in:
// Dit is een bestand met de naam "common_functions.js" function doCommonStuff () { // haal mogelijk wat opties op, etc. // ... comment ("Dit is R-code voor gebruik in andere plugins\n"); // ... }
// Dit is een van uw gewone plugin .js
bestanden
// includen (opnemen) van de gemene functies
include ("common_functions.js");
function calculate () {
// doe iets
// ...
// invoegen gemene code
doCommonStuff ();
}
Merk op dat het soms zelfs nog nuttiger is, dit om te keren en een “kale” preprocess()
, calculate()
, en printout()
-functies in een gemeenschappelijk bestand te definiëren, en deze die gedeelten aan te laten roepen (call), die in de diverse plugins verschillend zijn. Bijv.:
// Dit is een bestand met de naam "common_functions.js" function calculate () { // doe dingen die in alle plugins hetzelfde zijn // ... // voeg iets toe dat verschillend is in de plugins getSpecifics (); // ... }
// dit is een van uw gewone plugin .js
-bestanden
// includen van de gemene functies
include ("common_functions.js");
// merk op: geen calculate()-functie wordt hier gegeven.
// maar in plaats daarvan in de common_functions.js.
function getSpecifics () {
// enige R-code afdrukken
}
Een probleem waar u op moet letten, met deze techniek, is de scopes van de variabelen. Zie het handboek van JS voor scopes van variabelen. (de scope van een variabele is het codegebied waarin de variabele bestaat).
Deze techniek wordt veel gebruikt in de plugins voor (CLT)plots van verdelingsfuncties, dus kunt daar voorbeelden hiervan vinden.