@frehner/apphistory
TypeScript icon, indicating that this package has built-in type declarations

0.0.6 • Public • Published

appHistory polyfill

Tests

⚠️ Not for production. Use at your own risk; there will be breaking changes because the spec is not yet finalized ⚠️

A work-in-progress polyfill for the appHistory proposal.

Usage

This polyfill must run in a browser-like environment (e.g. an env that has window.location and window.history). If there's time, and demand for it, I think it would be interesting to have a discussion about how this polyfill could work in other environments.

To setup the polyfill so that it will automatically listen for anchor tag clicks, do the following:

import { useBrowerPolyfill } from "@frehner/apphistory";
userBrowserPolyfill();

// appHistory is now on the window
window.appHistory.push();

Alternatively, you can create your own instance of AppHistory:

import { AppHistory } from "@frehner/apphistory";
const appHistory = new AppHistory();

// use your own instance of appHistory, without any events from things like anchor tags
appHistory.push();

Differences

  • The events for an AppHistoryEntry use event.detail.target instead of event.target to get access to the AppHistoryEntry that fired the event.

Readme

Keywords

Package Sidebar

Install

npm i @frehner/apphistory

Weekly Downloads

1

Version

0.0.6

License

MIT

Unpacked Size

176 kB

Total Files

25

Last publish

Collaborators

  • frehner