table
table copied to clipboard
`process is not defined` when used in Vanilla JS (without Node.js)
TanStack Table version
v8.21.3
Framework/Library version
vanilla (through Rails importmap)
Describe the bug and the steps to reproduce it
I'm using @tan-stack/table-core in vanilla JS without any bundler or Node.js runtime. It seems that createTable() function checks runtime environment for debugging, which throw an exception for my setup.
const M = [t, c, s, a, n, l, p, m, F, r, f, C, h, S, g];
function createTable(e) {
var t, n;
process.env.NODE_ENV !== "production" && (e.debugAll || e.debugTable) && console.info("Creating Table Instance...");
I temporarily use a mock process object to workaround. Would it be nicer to check process at first?
Your Minimal, Reproducible Example - (Sandbox Highly Recommended)
(no need)
Screenshots or Videos (Optional)
No response
Do you intend to try to help solve this bug with your own PR?
Yes, I think I know how to fix it and will discuss it in the comments of this issue
Terms & Code of Conduct
- [x] I agree to follow this project's Code of Conduct
- [x] I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.
Got the same error, here is the solution I made to bypass that.
- Pin the umd build package, instead of the default one from the command
bin/importmap pin @tanstack/table-core
pin "@tanstack/table-core", to: "https://unpkg.com/@tanstack/[email protected]/build/umd/index.development.js" # @8.21.3
- In the stimulus controller, import tanstack-core, and use the global variable TableCore.
import "@tanstack/table-core";
...
const columnHelper = TableCore.createColumnHelper();
...
In the umd build, there is no process env check.