2016-01-17 9 views
6

Come si può astrarre l'utilizzo dell'oggetto window del browser quando si utilizza il framework Aurelia? Vorrei evitare la dipendenza diretta dal browser quando si utilizzano funzionalità come setInterval o addEventListener per esempio.Come astrarre l'utilizzo dell'oggetto finestra del browser?

Aurelia ha qualcosa chiamato Libreria di astrazione piattaforma che in teoria dovrebbe fornire la funzionalità che sto cercando. Tuttavia, non ho potuto trovare alcuna documentazione al riguardo al momento della stesura di questa domanda.

risposta

10

alcuni esempi:

import {DOM, PLATFORM, FEATURE} from 'aurelia-pal'; 

PLATFORM.addEventListener('click', e => ...); 
PLATFORM.requestAnimationFrame(() => ...); 

let event = DOM.createCustomEvent('foo', { bubbles: true }); 
DOM.dispatchEvent(event); 
let element = DOM.createElement('div'); 

if (FEATURE.shadowDOM && FEATURE.scopedCSS && FEATURE.htmlTemplateElement) { 
    ... 
} 

non c'è setTimeout/setInterval nel PAL credo perché aurelia non usa setTimeout. Ho aggiunto uno issue per ottenere questi aggiunti.

+0

Grazie per gli esempi e il problema GitHub! –