JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3
  • Score
    100M100P100Q18863F
  • License MIT

The plugin selects extra props from page state to your component.

Package Exports

  • ima-plugin-select

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ima-plugin-select) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

ima-plugin-select

The IMA plugin selects extra props from page state to your component. It uses HOC at the background. It can be very useful for example some analytical data.

Installation

npm install ima-plugin-select --save
// /app/build.js

let vendors = {
    common: [
        'ima-plugin-select'
    ]
};

/*
The select plugin is now available.

import select from 'ima-plugin-select';
*/
// /app/config/bind.js
import PageStateManager from 'ima/page/state/PageStateManager';

//COMPONENT Utils
oc.constant('$Utils', {
    ...
    $PageStateManager: oc.get(PageStateManager)
    ...
});

/*
The select plugin use $PageStateManager for selecting extra props to your component.
*/

Usage

// /app/component/Component.js
import select from 'ima-plugin-select';

// Your page state
//{
//	title: 'My title',
//	media: {
//		width: 90,
//		height: 60
//	}
//}


class Component extends React.PureComponent {
    render() {
        return <h1>{this.props.title}</h1>;
    }
}

const titleSelector = (state, context) => {
    return {
        title: state.title
    };
}

// Only for example purpose. You can use more selectors.
const emptySelector = (state, context) => {
    return {};
}

export default select(titleSelect, emptySelector)(Component);

IMA.js

The IMA.js is an application development stack for developing isomorphic applications written in pure JavaScript. You can find the IMA.js skeleton application at https://github.com/seznam/IMA.js-skeleton.