memorystore
memorystore copied to clipboard
Class constructor LRUCache cannot be invoked without 'new'
node version: v14.15.0 via nvm version: 1.6.4
I get this error when attempting to use the memorystore.
Class constructor LRUCache cannot be invoked without 'new' {
"stack": "TypeError: Class constructor LRUCache cannot be invoked without 'new'\n at new MemoryStore (/node_modules/memorystore/lib/memorystore.js:78:1)
I did add the new
on line 78
and re-built and it does fix the error
my code sample
import session from 'express-session';
import createMemoryStore from 'memorystore';
...
const MemoryStore = createMemoryStore(session);
...
const expStoreConfig: session.SessionOptions = {
secret: environment.session_secret,
cookie: { maxAge: 86400000 },
store: new MemoryStore({
checkPeriod: 86400000
}),
resave: false,
saveUninitialized: true
};
change to line: 78
this.store = new LRU(this.options)
I could create a PR but the fix is so tiny, it might be faster on your end?
Note:
- I am using nx and yarn to build and manage my packages
did you yarn install
or npm install
? what version of lru-cache
did npm bring in when you installed?
I did use yarn install
to fetch it and it looks like it went with 6.0.0
. I did notice on another thread for lru-cache
that they had mentioned an update that now requires the new
keyword. I noticed the version reference in this package.json is ^4.0.3
so maybe its just an update the version and adding the new
on line 78
if you use the yarn install command the version installed should be 4.1.5
as stated in yarn.lock
. So I don't know how you possibly fetched 6.0.0.