Skip to content

Instantly share code, notes, and snippets.

@nothingrealhappen
Created May 20, 2018 08:18
Show Gist options
  • Save nothingrealhappen/03af3bde27f21b9f18b8b8133fc0a85e to your computer and use it in GitHub Desktop.
Save nothingrealhappen/03af3bde27f21b9f18b8b8133fc0a85e to your computer and use it in GitHub Desktop.
pageScript for turbolinks version
export const pageScript = (path, fn) => (...args) => {
$(document).on('turbolinks:load', () => {
const pageID = $('body').attr('id');
const map = {
string: () => pageID === path,
object: () => path.some(x => x === pageID)
};
const isAllow = map[typeof path]();
return isAllow ? fn(...args) : null;
});
};
// usage:
// homeIndex.js
const homeIndex = () => {
alert(`I'm home page specific logic`);
}
export default pageScript('home-index', homeIndex);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment