{"_id":"8lab_hooks","_rev":"3-17fc7e5c2dd1c4e70762d648c183a497","name":"8lab_hooks","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"8lab_hooks","version":"1.0.0","description":"8lab hooks库","scripts":{"start":"webpack serve --open --mode development","build":"webpack --mode production","test":"npx jest"},"main":"src/index.ts","dependencies":{},"devDependencies":{"less":"^4.1.1","@babel/preset-env":"^7.14.4","@babel/core":"^7.14.3","@babel/eslint-parser":"^7.14.4","@types/node":"^15.9.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","@testing-library/react-hooks":"^7.0.0","jsdom":"16.6.0","jsdom-global":"3.0.2","jest":"^27.0.4","ts-jest":"^27.0.3","react-test-renderer":"^17.0.2","node-notifier":"^10.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","css-loader":"^5.2.6","enzyme":"^3.11.0","@wojtekmaj/enzyme-adapter-react-17":"^0.6.1","eslint":"^7.27.0","eslint-config-airbnb":"^18.2.1","eslint-plugin-import":"^2.23.4","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.24.0","html-webpack-plugin":"^5.3.1","less-loader":"^9.0.0","prettier":"^2.3.0","style-loader":"^2.0.0","ts-loader":"^9.2.2","typescript":"^4.3.2","webpack":"^5.38.1","webpack-cli":"^4.7.0","webpack-dev-server":"^3.11.2"},"author":{"name":"8lab-cc"},"license":"ISC","gitHead":"d3145e53246e75fd75101d48568715ff10c7b3f2","_id":"8lab_hooks@1.0.0","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-gK3gZICIf/NkBwF344dGtJ+uAu+beOE2L9OBrDMnGhfGlM7AP+8QR+2+3rzg5/466BFCZjmOc2vdjUpZCCrGQw==","shasum":"21cbbf21fafcdc2b5e72629e58a3fd7a80be530c","tarball":"https://registry.npmjs.org/8lab_hooks/-/8lab_hooks-1.0.0.tgz","fileCount":9,"unpackedSize":27828,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwXQsCRA9TVsSAnZWagAAnHkP/2m7vifnzbcoEtJ8C1OC\nz5a+iM5at4ImtBTwxNIdmDR62wu1NTbYNc4IhLIGhRF/v5d7VLG8M7qDgm3e\nar1qudU+05rIKWgflOBVBWV3f9zj8fJbROMyBrxVP/VNwY3HIXUXitXJkelO\n7+ntsuVkfbajEtCAZ/2n0NmaWiFPgvmHawvvPeW7NP4jbbMczS9FMYHvy/5Z\njCFjRxMqjtC42tBpDhdaU4N2YpNDl/xy/ascXjxDZvzoON9b6EoIHuDqXPoq\nAttlu8X9Nh8Oes3v8ERG4J6klkGCbYFop6zfsrOyOEnHvDvmbrAJqe/ntgWS\nD8XaBGM7rWXi1SpHws+WlKDYRWOXXP0PDedAKWXV3NRNBwC3pN7f9+4KgQIm\nUTOYK9r7OVkCiDmlpbl0bkIy4bMVqpoqAn3Zud2nsOc2/zIJD5vGvozrHLls\ndpMVzbiqvmRLFp+Hp8HKYX86AA7PRzE6h8rV5+tZiZbzRNLC+dEVwqYi9oX8\nUkkewsW7pEMXIcqk0wXTzwNkQ1qijP494XbgKuzn4P3vPOi8WeBQ8eJaZZVS\n+SsTZZ8jHbcJZYRoF85J6cS/xv3QbFZnhxov6U9bwEMzau7FJJIar/8/6dlG\nMVlfALpietI5s7nMImNLBum3oUI2IkonBPLQnCvpmCu/HqAUTEoR9SC/NX7L\ncNm8\r\n=Agiq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPi63XATElyrnT+uIwmFa07VA5p2hn9c964WryyUIs5gIgI+Hx2tQUU9VjaAEkkIiu+aITpLwRe5xUizpYvbeb6oE="}]},"_npmUser":{"name":"cc123sx","email":"cc123sx@163.com"},"directories":{},"maintainers":[{"name":"cc123sx","email":"cc123sx@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/8lab_hooks_1.0.0_1640068140361_0.9336113383188267"},"_hasShrinkwrap":false},"1.0.1":{"name":"8lab_hooks","version":"1.0.1","description":"8lab hooks库","scripts":{"start":"webpack serve --open --mode development","build":"webpack --mode production","test":"npx jest"},"main":"src/index.ts","dependencies":{},"devDependencies":{"less":"^4.1.1","@babel/preset-env":"^7.14.4","@babel/core":"^7.14.3","@babel/eslint-parser":"^7.14.4","@types/node":"^15.9.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","@testing-library/react-hooks":"^7.0.0","jsdom":"16.6.0","jsdom-global":"3.0.2","jest":"^27.0.4","ts-jest":"^27.0.3","react-test-renderer":"^17.0.2","node-notifier":"^10.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","css-loader":"^5.2.6","enzyme":"^3.11.0","@wojtekmaj/enzyme-adapter-react-17":"^0.6.1","eslint":"^7.27.0","eslint-config-airbnb":"^18.2.1","eslint-plugin-import":"^2.23.4","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.24.0","html-webpack-plugin":"^5.3.1","less-loader":"^9.0.0","prettier":"^2.3.0","style-loader":"^2.0.0","ts-loader":"^9.2.2","typescript":"^4.3.2","webpack":"^5.38.1","webpack-cli":"^4.7.0","webpack-dev-server":"^3.11.2"},"author":{"name":"8lab-cc"},"license":"ISC","gitHead":"d3145e53246e75fd75101d48568715ff10c7b3f2","_id":"8lab_hooks@1.0.1","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-D+x/ndGrSKv1DS7t+aZEkqKYRrup1zOyNbk2SfCOcjpTM7J96IQKMem454q5oDdR2SUE6CZ065GdB5R8hNOlvw==","shasum":"bdc89a1e43d3ac6e4d711249ca4325221abca72b","tarball":"https://registry.npmjs.org/8lab_hooks/-/8lab_hooks-1.0.1.tgz","fileCount":9,"unpackedSize":28550,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwX5wCRA9TVsSAnZWagAAOSQP/iahYnfhN0QX2+Uh3IXL\nhz2egqdLnZIHJSIhDa3r09Zwe8VGWBklYoNPcyV8dJwsUo17Q2VewsuY2JId\nvRPg3VJXFXGVAjwbnTHvR8urG/2Xa4KRisVzrgVqK5ugomnWCw5i8P8xulHU\nfzW6gX/FL0f1EZfrsXL6Y2QNE39cw6V3pVqIpq3NQsD1O5TJ/j/3Js7/T4Rz\ng5Bate04Vvghve2KU49j3VDczLuIYI0bWVjCIftdWoXE//U49QWY2dyjrh0/\nFRAh1JpHV7tfttXDZZrJs79+K2yuG+KVcjKf7kmcG/dcPs2BDyskEdbkosxC\nrNoTHidp3CKND5VPsMsmvcJUzfOh78p/bbRVeAdJ5cd4ZMh62+vK8hMm2ytj\nH6YGEyhwkxT/PBe3XvW2uxlbFY0OTRqn92iYoHNJX8/5ux9ekJL/MxzfUGOs\nsirGwIhZv94dR7foz6u0lOenTGfTxRU2aNUMma4W0pcML2EeuBIiDcQYdxtj\ndONorZWkFuBIzXJHib746sL7PnAzx6DPAW6BwRKivcTD7wWMg32zdQEW9FZc\nKvFz3DRkWJEYOJFq/LcSv7q6tcspLbinhbiyFl4B6M+8QpxygKl92b+dQtjQ\nwxqQ97Vpy56j7vDStsIm0xMjrcBJlmtC/4ZArfkjhALQJhLZ3EB0lZ4bk9t/\nAfPX\r\n=8s+N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEyYFXuLdsUoJOhqPVIo+0mBx6NkjsQ6i7xfnnZTpq2fAiEAySZAy0XRZNFdGHQAmCSDPf+URvLLFUgh1HA7RXlcKRQ="}]},"_npmUser":{"name":"cc123sx","email":"cc123sx@163.com"},"directories":{},"maintainers":[{"name":"cc123sx","email":"cc123sx@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/8lab_hooks_1.0.1_1640070768171_0.18745051938530843"},"_hasShrinkwrap":false},"1.0.2":{"name":"8lab_hooks","version":"1.0.2","description":"8lab hooks库","scripts":{"start":"webpack serve --open --mode development","build":"webpack --mode production","test":"npx jest"},"main":"src/index.ts","dependencies":{},"devDependencies":{"less":"^4.1.1","@babel/preset-env":"^7.14.4","@babel/core":"^7.14.3","@babel/eslint-parser":"^7.14.4","@types/node":"^15.9.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","@testing-library/react-hooks":"^7.0.0","jsdom":"16.6.0","jsdom-global":"3.0.2","jest":"^27.0.4","ts-jest":"^27.0.3","react-test-renderer":"^17.0.2","node-notifier":"^10.0.0","babel-eslint":"^10.1.0","babel-loader":"^8.2.2","css-loader":"^5.2.6","enzyme":"^3.11.0","@wojtekmaj/enzyme-adapter-react-17":"^0.6.1","eslint":"^7.27.0","eslint-config-airbnb":"^18.2.1","eslint-plugin-import":"^2.23.4","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.24.0","html-webpack-plugin":"^5.3.1","less-loader":"^9.0.0","prettier":"^2.3.0","style-loader":"^2.0.0","ts-loader":"^9.2.2","typescript":"^4.3.2","webpack":"^5.38.1","webpack-cli":"^4.7.0","webpack-dev-server":"^3.11.2"},"author":{"name":"8lab-cc"},"license":"ISC","gitHead":"d3145e53246e75fd75101d48568715ff10c7b3f2","_id":"8lab_hooks@1.0.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-ua5Om5uXeyHECx+F0A0eIkiblS75HMzcZoBedLx+EkiLmWovBgtLTKXJmdo2ltZulxGjtvPZskF10/HklJm8sA==","shasum":"8be0571fed6680c5f79749eb335466fef695b27a","tarball":"https://registry.npmjs.org/8lab_hooks/-/8lab_hooks-1.0.2.tgz","fileCount":9,"unpackedSize":28607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwX+xCRA9TVsSAnZWagAACGQP/Axgl1dZ+DiclJkMcbVn\n6IOrEi3Krro0rz5Y44hnzY7Cx8LGkh6X4MvX48BFrAhQGpSFGqHv8Cy7+CnF\nL74d/ngZ1xVjzvn3jHqWzzEaithiw/t5sh9xVIwejGdlgGcrLa7oNrdPHvGq\ncn3Dc7hsO77t5ccehAc9OeGdqY8fH0NTOPPaEWetriCTEZ/yZ+xnkKGPpdAa\nsXEqF/m89iTS3Dfte+RgFM6m6J+STMqsBpIcBDjQHZBderwc35Evy2j0Y04k\nQgeOVWStDbC/l3I6o1m4oIi2NzDWYPrMrO4Kb3bNLA0gskVrLSThJyO22u5K\nNEfcbZCfx41ZpRXjBaM2HglHQx0G5oB7d1jn4E00NyyrxShDtF0eqL2BsOhE\nsJFIekOJppve+4CFJ8nbUCQXSHcQ5FwAl1V3fBR06Qu+V4r6Mppi55Zuehch\nj9o5OhEoeG88mgSEVzHnWbsnBuYVbtz28vSNu+wND+GMaSIeRe/BSsMqSB4a\n57TakyjdBYEebUvPQDfnhbl33g5M20OCMACGKkFkX64jM0AM82UOZs/oc3Q4\ns8OtxdRHSaYM6I4GpG67jvVNxsXi5fZ3G0T9m4gBxuwnFIk1g2ZNuCrYzYBq\ntT8Q2/wM2PO0VWEkyu15QYMBnSjYEU3jVtYIuLtkmcH9hZHZQM/qbeWSBSem\ntUMe\r\n=DwFC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtGHR4YWTLeB5mdsiAVxxfvyePKoYWeDj2CBPd1qAAyAIhAJr7mmB2syzbpU59Q5xnJZ/VJq6Uj1amO1+ldtoe97oB"}]},"_npmUser":{"name":"cc123sx","email":"cc123sx@163.com"},"directories":{},"maintainers":[{"name":"cc123sx","email":"cc123sx@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/8lab_hooks_1.0.2_1640071089603_0.9809377264446564"},"_hasShrinkwrap":false}},"time":{"created":"2021-12-21T06:29:00.361Z","1.0.0":"2021-12-21T06:29:00.503Z","modified":"2022-04-04T10:24:55.154Z","1.0.1":"2021-12-21T07:12:48.317Z","1.0.2":"2021-12-21T07:18:09.772Z"},"maintainers":[{"name":"cc123sx","email":"cc123sx@163.com"}],"description":"8lab hooks库","author":{"name":"8lab-cc"},"license":"ISC","readme":"# hooks\n\n# useColumns\n\n适用于 columns 中有 render 依赖外部 State, 或 columns 有关联 columnsSetter 做动态变更\n\n快速开始：\n\n```javascript\n  import { TableColumnSetter } from '@ncompass/table-column-setter'\n  import { useFetchData, useColumns } from '@ncompass/hooks'\n\n  const { columns, columnsSetter } = useColumns({\n    dependencies: [data],\n    columns: [\n      {\n        title: '名称',\n        dataIndex: 'name',\n        key: 'name',\n        render: (text) => {\n          return data?.res\n        },\n      },\n      {\n        key: 'aaabbb',\n        title: 'aaabbb',\n        dataIndex: 'aaabbb',\n        defaultHide: true,\n      },\n    ],\n  })\n\n  <TableColumnSetter\n    columns={columns}\n    onChange={columnsSetter}\n  />\n\n  <Table\n    pagination={pagination}\n    dataSource={data || []}\n    onChange={changeHandler}\n    columns={columns}\n    loading={loading}\n  />\n```\n\n# useWindowSize\n\n用于监听 window 宽高 (clientWidth,clientHeight)\n\nconst size: { width: number, height: number} = useWindowSize()\n\n# useLocalStorage\n\n用于跨页签共享信息 目前包含用户信息设置\n\n> 用户信息设置: 用户在多页签进行操作 所有页签共享最新 activeTime 以保证设置的超时时间过后准时 logout\n\n快速开始\n\n```javascript\nconst { isUserActive, login, getUserToken, getUserInfo } = useLocalStorage({\n  userActivePeriod: 3600,\n});\n\nuseEffect(() => {\n  setTimeout(() => login({ token: 'askjhkjashdsad', name: 'pd' }), 2000);\n}, []);\n\nuseEffect(() => {\n  console.log(isUserActive, getUserToken(), getUserInfo());\n}, [isUserActive]);\n```\n\n# useFetchData\n\n用于接口请求\n\n> 用于接口发送请求，携带参数，支持 post,get,delete,put 请求方式，自带刷新列表,自带 loading 等功能\n\n快速开始\n\n```javascript\nconst { data, setParams, loading, reload } = useFetchData({\n    doWhileInit = true, //是否立即触发\n    url = '', // 请求地址\n    method = requestMethodTypes.post, // 请求方式\n    dataProcess,// 获取数据成功后 可选的结果处理函数  (data: any) => any  返回值会被设置为新的data\n    errorHandler,// 获取数据失败后  可选的错误处理函数  (error: object) => void\n    successHandler,// 获取数据成功后 可选的回调函数 ,处理异步\n    params, // 参数对象\n});\n\n```\n","readmeFilename":"README.md"}