{"_id":"@brucelikk/brc-hooks-vue","name":"@brucelikk/brc-hooks-vue","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.2":{"name":"@brucelikk/brc-hooks-vue","version":"1.0.2","private":false,"description":"a Vue3 + TS based highly popular custom hooks lib","main":"bundle.es.js","repository":{"type":"git","url":"https://gitee.com/LiShuaizi/brc-hooks-vue.git"},"keywords":["Vue3","hooks","usePopup","useCountdown","useRequest","useFormValidator"],"author":{"name":"brucelikk"},"license":"ISC","peerDependencies":{"vue":"^3.0.0"},"_id":"@brucelikk/brc-hooks-vue@1.0.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-YYx5jg+v8Qagz63vt4Cy5zDw41LuTfCy0Y9XfKlZ6DcMe74/Mz+RTH9kCt8svUkZ8NcpkafDqfPK8u3nvLM6Zg==","shasum":"4bb1eeafc3c0576a99896e14233eb542cce12520","tarball":"https://registry.npmjs.org/@brucelikk/brc-hooks-vue/-/brc-hooks-vue-1.0.2.tgz","fileCount":11,"unpackedSize":18120,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCEr0cSbo5llnqwB+/+ZW4vkKFE2qq77DTQ2CDtFYMJrgIgQWuwdt7Q8MPT/9TnuezpuCrC6tXGmlfl538vjbsXjFk="}]},"_npmUser":{"name":"brucelikk","email":"likk029@163.com"},"directories":{},"maintainers":[{"name":"brucelikk","email":"likk029@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/brc-hooks-vue_1.0.2_1691505979216_0.6402744742162785"},"_hasShrinkwrap":false}},"time":{"created":"2023-08-08T14:46:19.088Z","1.0.2":"2023-08-08T14:46:19.447Z","modified":"2023-08-08T14:46:19.802Z"},"maintainers":[{"name":"brucelikk","email":"likk029@163.com"}],"description":"a Vue3 + TS based highly popular custom hooks lib","keywords":["Vue3","hooks","usePopup","useCountdown","useRequest","useFormValidator"],"repository":{"type":"git","url":"https://gitee.com/LiShuaizi/brc-hooks-vue.git"},"author":{"name":"brucelikk"},"license":"ISC","readme":"-  NPM官方源安装【BRC指令】\n\n```\nnpm i -g nrm\nnrm use npm\nnpm i @brucelikk/brc-hooks-vue\n```\n\n\n\n- 轻松倒计时\n\n```vue\n<template>\n  <div>\n    UseCountdownDemo\n    <hr />\n    remainingSeconds:{{ remainingSeconds }} <br />\n\n    <button @click=\"startCountdown\">startCountdown</button>\n    <button @click=\"stopCountdown\">stopCountdown</button>\n  </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useCountdown } from \"@brucelikk/brc-hooks-vue\";\n\nconst { remainingSeconds, startCountdown, stopCountdown } = useCountdown(60);\n</script>\n\n<style lang=\"scss\" scoped></style>\n```\n\n\n\n- 校验表单\n\n```vue\n<template>\n  <div>\n    <h1>表单验证</h1>\n    <div>\n      <label for=\"username\">用户名：</label>\n      <input id=\"username\" v-model=\"username\" type=\"text\" />\n      <p v-if=\"!isUsernameValid\">用户名长度必须大于等于 6</p>\n    </div>\n    <div>\n      <label for=\"password\">密码：</label>\n      <input id=\"password\" v-model=\"password\" type=\"password\" />\n      <p v-if=\"!isPasswordValid\">密码长度必须大于等于 8</p>\n    </div>\n    <button @click=\"handleSubmit\">提交</button>\n  </div>\n</template>\n\n<script lang=\"ts\">\nimport { useFormValidator } from '@brucelikk/brc-hooks-vue'\n\nexport default {\n  name: \"FormValidator\",\n  setup() {\n    const {\n      username,\n      password,\n      isUsernameValid,\n      isPasswordValid,\n      handleSubmit,\n    } = useFormValidator();\n\n    return {\n      username,\n      password,\n      isUsernameValid,\n      isPasswordValid,\n      handleSubmit,\n    };\n  },\n};\n</script>\n```\n\n\n\n- 发起网络请求\n\n```vue\n<template>\n  <div>\n    <button @click=\"fetchData\">fetchData</button>\n    <p>loading {{ loading }}</p>\n    <p>error {{ error }}</p>\n    <p>data {{ data }}</p>\n  </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useRequest } from \"@brucelikk/brc-hooks-vue\";\n\nconst { data, loading, error, fetchData } = useRequest(\n  \"https://192.168.0.103:4000/api/contract\"\n);\n</script>\n```\n\n","readmeFilename":"README.md"}