Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

auto-bind

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

auto-bind

Automatically bind methods to their class instance

Source
npmnpm
Version
1.2.0
Version published
Weekly downloads
5.8M
7.9%
Maintainers
1
Weekly downloads
 
Created
Source

auto-bind Build Status

Automatically bind methods to their class instance

Install

$ npm install auto-bind

Usage

const autoBind = require('auto-bind');

class Unicorn {
	constructor(name) {
		this.name = name;
		autoBind(this);
	}

	message() {
		return `${this.name} is awesome!`;
	}
}

const unicorn = new Unicorn('Rainbow');

// Grab the method off the class instance
const message = unicorn.message;

// Still bound to the class instance
message();
//=> 'Rainbow is awesome!'

// Without `autoBind(this)`, the above would have resulted in
message();
//=> Error: Cannot read property 'name' of undefined

API

autoBind(self, [options])

Bind methods in self to their class instance. Returns the self object.

self

Type: Object

Object with methods to bind.

options

Type: Object

include

Type: Array<string|RegExp>

Bind only the given methods.

exclude

Type: Array<string|RegExp>

Bind methods except for the given methods.

autoBind.react(self, [options])

Same as autoBind, but excludes the default React component methods.

class Foo extends React.Component {
	constructor(props) {
		super(props);
		autoBind.react(this);
	}

	// …
}
  • bind-methods - Bind all methods in an object to itself or a specified context

License

MIT © Sindre Sorhus

Keywords

auto

FAQs

Package last updated on 19 Jan 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts