Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including stimulus-placeholdable with all npm packages installed. Try it out:

var stimulusPlaceholdable = require("stimulus-placeholdable")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

stimulus-placeholdable v1.0.5

A StimulusJS controller for content that needs a placeholder.

npm codebeat badge

Stimulus Placeholdable

This is a simple StimulusJS controller that shows and hides a placeholder based on the content within some container element.

JSFiddle Demo.

Install

This assumes that StimulusJS is already installed.

Add the stimulus-placeholdable module:

$ yarn add stimulus-placeholdable

or

$ npm install stimulus-placeholdable

Basic Usage

First, register the controller with StimulusJS:

// application.js
import { Application } from 'stimulus';
import { Placeholdable } from 'stimulus-placeholdable';

const application = Application.start();
application.register('placeholdable', Placeholdable);

Next, you need to attach the controller to some set of elements that contains a container target to monitor, and a placeholder target to show when the container is empty.

<div data-controller="placeholdable">
  <ul data-target="placeholdable.container">
    <li>An item</li>
    <li>Another item</li>
  </ul>

  <h1 data-target="placeholdable.placeholder">
    There are no items in the list!
  </h1>
</div>

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/stephendolan/stimulus-placeholdable. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

This package is available as open source under the terms of the MIT License.

Metadata

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free