javascript-sdk icon indicating copy to clipboard operation
javascript-sdk copied to clipboard

nextjs15:hexoid is not a function

Open yoniu opened this issue 1 year ago • 0 comments

运行环境:node20、next15、react18

问题描述:

我在应用里加了个 leancloud 用户登录功能,打包的时候出现 hexoid is not a function 的报错。

另外还提示缺少utf-8-validatebufferutil 两个依赖

代码:

  const handleLogin = () => {
    setLoading(true)
    User.logIn(username, password).then(
      (user) => {
        // 登录成功
        messageApi.success("欢迎回来," + user.getUsername())
        setVisible(false)
        props.onLogin()
      },
      (error) => {
        // 登录失败
        messageApi.error(error.message)
      }
    ).finally(() => {
      setLoading(false)
    })
  }

报错:

 ⨯ node_modules/.pnpm/[email protected]/node_modules/formidable/src/Formidable.js (15:1) @ eval
 ⨯ TypeError: hexoid is not a function
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at eval (./src/hooks/leancloud.ts:5:75)
    at (ssr)/./src/hooks/leancloud.ts (/workspace/homepage/dist/server/app/moment/page.js:463:1)
    at __webpack_require__ (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at eval (./src/app/moment/page.tsx:9:78)
    at (ssr)/./src/app/moment/page.tsx (/workspace/homepage/dist/server/app/moment/page.js:419:1)
    at Object.__webpack_require__ [as require] (/workspace/homepage/dist/server/webpack-runtime.js:33:43)
    at JSON.parse (<anonymous>)
digest: "3492828021"
  13 | const qs = require('qs');
  14 |
> 15 | const toHexoId = hexoid(25);
     | ^
  16 | const DEFAULT_OPTIONS = {
  17 |   maxFields: 1000,
  18 |   maxFieldsSize: 20 * 1024 * 1024,
 GET /moment 500 in 63ms

yoniu avatar Nov 04 '24 07:11 yoniu