programing

Typecript에서 작성한 사용자 정의 React 후크를 npm에 게시하려면 어떻게 해야 하는가?

prostudy 2022. 4. 7. 21:14
반응형

Typecript에서 작성한 사용자 정의 React 후크를 npm에 게시하려면 어떻게 해야 하는가?

Typecript에서 Reaction 후크를 작성했으며 npm에 게시하려고 하는데 빌드 구성을 올바르게 설정할 수 없는 것 같아.다른 빌드 툴은 사용하지 않는다.tsc나는 Typecript 문서, React 문서 및 몇 개의 블로그 게시물에 있는 추천서를 읽었다.

빌드하고 게시할 때 오류가 발생하지 않지만 다른 프로젝트에서 모듈을 가져오려고 하면 리액션을 가져오는 동안 오류가 발생함하지만 내가 준비한 모든 것은react~이어야 한다peerDependency사용자 정의 후크를 게시할 때

'에서 'reaction' 모듈을 찾을 수 없음../useMyHook/build/index.js'

  • tsc:v4.1.3
  • 반응:v16.14.0

Repo: https://github.com/raineorshine/use-swipe-to-dismiss

tsconfig.json:

{
  "compilerOptions": {
    "allowSyntheticDefaultImports": true,
    "declaration": true,
    "esModuleInterop": true,
    "module": "esnext",
    "moduleResolution": "node",
    "strict": true,
    "target": "es5",
    "outDir": "./build"
  },
  "include": ["src"],
  "exclude": ["node_modules", "**/__tests__/*"]
}

꾸러미json(분할):

{
  "name": "useMyHook",
  "version": "0.1.0",
  "files": [
    "build/**/*"
  ],
  "main": "build",
  "scripts": {
    "build": "tsc",
    "prepare": "npm run build"
  },
  "peerDependencies": {
    "react": ">=16.0.0",
    "typescript": ">=4.1.0"
  },
  "devDependencies": {
    "@types/node": "^14.14.21",
    "@types/react": "^17.0.0"
  }
}

인덱스.ts(분할):

import { useState } from 'react'

const useMyHook = () => {

  const [x, setX] = useState<number>(0)

  return {
    onClick: () => {
      console.log(x)
    }
  }
}

export default useMyHook

참조URL: https://stackoverflow.com/questions/65765672/how-do-i-publish-a-custom-react-hook-written-in-typescript-to-npm

반응형