Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add exactSelector option to match only provided selector #280

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

lynlevenick
Copy link

@lynlevenick lynlevenick commented Apr 4, 2021

The selector option provides only one of four selectors, so if another matches before the user's selector then the option is ignored. Add a new option which controls whether the provided selector is the only one used.

For my use case, this would fix a potential rerender where the stylesheet is added before an inlined script in head. On occasion, the browser renders the page background, which can result in a full-screen white background flash when dark mode is desired by the user.

edit: I'm not sure why the Node 10 tests are failing; something to do with coverage?


At present, I'm hacking around this with something like so:

const options = {
  selector: 'head link[rel="stylesheet"]'
};
const oldJoin = Array.prototype.join;
Array.prototype.join = function (...args) {
  if (this[0] === options.selector) {
    return this[0];
  }
  return oldJoin.call(this, ...args);
};

so no worries if this is out of scope.

The selector option provides only one of four selectors, so if another
matches then the option is ignored. Add a new option which controls
whether the provided selector is the only one used.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant