perspective-dev/perspective · error
viewer-charts plugins already registered
Error message
viewer-charts plugins already registered (${already_registered.length}); skipping duplicate registration (Perspective was loaded more than once on this page). What it means
Error "viewer-charts plugins already registered (${already_registered.length}); skipping duplicate registration (Perspective was loaded more than once on this page)." thrown in perspective-dev/perspective.
Solutions
- Deduplicate imports of the viewer-charts package so it is evaluated only once per page
- Check bundler config for the package being emitted into multiple chunks
- If multiple copies are intentional, treat the warning as informational — duplicate registration is safely skipped
- Ensure all perspective-viewer and plugin builds come from a single package version
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at packages/viewer-charts/src/ts/index.ts:55 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of perspective-dev/perspective@11c8238c0c (2026-09-09).
Data as JSON: /api/errors/34a9aa8789179b1f.
Report an issue: GitHub.
Appendix: source
Thrown at packages/viewer-charts/src/ts/index.ts:55
}
customElements.define(
tagName,
class extends HTMLPerspectiveViewerWebGLPluginElement {
_chartType = chart;
static _chartType = chart;
},
);
customElements.whenDefined("perspective-viewer").then(async () => {
const Viewer = customElements.get("perspective-viewer") as any;
await Viewer.registerPlugin(tagName);
});
}
});
if (already_registered.length > 0) {
console.warn(
`viewer-charts plugins already registered (${already_registered.length}); skipping duplicate registration (Perspective was loaded more than once on this page).`,
);
}
}
register();
View on GitHub (pinned to 11c8238c0c)