emg
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

emg

MIT LICENSE npm package npm package

A simple, enhanced react image component with loading spinner, fallback support and others.

Examples

see the examples

Features

  • lazy loading
  • loading indicator
  • error handler and fallback placeholder

Installing

Using command line:

$ yarn add emg
# or 
$ npm i -S emg

Using cdn:

<script src="//unpkg.com/emg/dist/emg.umd.js"></script>

Usage

import Emg as Img from 'emg';
 
class Example extends React.Component{
  public render(){
    return <Img src="url/for/image"/>
  }
}

Options

  • className: class name
    • type: string
  • src: url of the image to load
    • type: string
  • alt: alt for the image
    • type: string
  • title: title attribute for the image
    • type: string
  • style: inline style for the image
    • type: React.CSSProperties
  • loadingImg: show while image loading
    • type: string
  • loadErrImg: show when failed to load the image
    • type: string
  • fallbackImg: instead of showing an error image, show this fallback one
    • type: string
  • isLazyLoad: whether lazy load or not. enable only when IntersectionObserver is supported
    • type: boolean
    • default: false
  • onLoad: onload handler
    • type: (event: Event) => void
  • onError: onerror handler
    • type: (event: Event) => void

Development

For development, clone this repo then

$ yarn install && yarn start

this will start a local server then open browser and go to http://localhost:3000 to see examples in action.

available scripts:

  • build: generate budnles that are ready to publish
  • dev: start local server for local development
  • lint: run tslint & stylelint

TODO

  • add test, unit and e2e
  • dont bail on warning

Acknowledgement

Lazy load

Lazy load using the modern IntersectionObserver api.

For more info you can read Lazy Loading Images and Video from WebFundamentals.

Package Sidebar

Install

npm i emg

Weekly Downloads

1

Version

0.1.0

License

MIT

Unpacked Size

70.3 kB

Total Files

10

Last publish

Collaborators

  • wayou