admin管理员组

文章数量:1429491

How would one abstract away the usage of browser's window object when using the Aurelia framework? I would like to avoid direct dependency on the browser when using functionality such as setInterval or addEventListener for example.

Aurelia has something called Platform Abstraction Library which in theory should provide the functionality I am looking for. However, I could not find any documentation about it at the time of writing this question.

How would one abstract away the usage of browser's window object when using the Aurelia framework? I would like to avoid direct dependency on the browser when using functionality such as setInterval or addEventListener for example.

Aurelia has something called Platform Abstraction Library which in theory should provide the functionality I am looking for. However, I could not find any documentation about it at the time of writing this question.

Share Improve this question asked Jan 17, 2016 at 18:04 Jaanus VarusJaanus Varus 3,5833 gold badges33 silver badges52 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 11

Few examples:

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) {
  ...
}

There's no setTimeout / setInterval in the PAL- I think because aurelia doesn't use setTimeout. I've added an issue to get these added.

本文标签: javascriptHow to abstract away the usage of browser39s window objectStack Overflow