@nowzoo/sheetload
TypeScript icon, indicating that this package has built-in type declarations

0.0.7 • Public • Published

Sheetload

Load stylesheets dynamically. Also scripts.

Quick Start

npm i @nowzoo/sheetload --save

Load a stylesheet...

import { Sheetload } from '@nowzoo/sheetload';
//...
Sheetload.load(url)
  .then((el: HTMLLinkElement) => {
    //links are disabled at this point...
    el.removeAttribute(el, 'disabled')
  })
  .catch((error: any) => {
    //...
  })

Load a script...

import { Scriptload } from '@nowzoo/sheetload';
//...
Scriptload.load(url)
  .then((el: HTMLScriptElement) => {
    //...
  })
  .catch((error: any) => {
    //...
  })

API

Sheetload

static load(url: string): Promise<HTMLLinkElement>

Loads a stylesheet, resolving with a newly created link element when it loads.

Note: The element's disabled attribute is set. You are responsible for enabling it:

this.renderer.removeAttribute(link, 'disabled');

Note: The element is appended to document.head. You are responsible for tracking the link tags yourself to prevent duplication.

Scriptload

static load(url: string): Promise<HTMLScriptElement>

Loads a script, resolving with a newly created script element when the script loads.

Note: The element is appended to document.head. You are responsible for tracking the script elements yourself to prevent duplication.

Elementload

static load(el: HTMLElement): Promise<HTMLElement>

Given an element, listens for load and error events. Resolves on load, rejects on error.

Contributing

Contributions are welcome.

git clone https://github.com/nowzoo/sheetload.git
npm i
ng build sheetload --prod

The library code is located under projects/sheetload.

Testing the library...

ng test sheetload

You can also use Wallaby for testing. Use the config found at projects/sheetload/wallaby.js.

Building the library...

ng build sheetload --prod

The demo code is in src. Run the demo locally...

# Build the current version of the library first...
ng build ngx-highlight-js --prod

ng serve --open

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i @nowzoo/sheetload

Weekly Downloads

5

Version

0.0.7

License

none

Unpacked Size

59.7 kB

Total Files

27

Last publish

Collaborators

  • chriscarson