{"_id":"rax-recyclerview","_rev":"171-dc94a32e59d8aaa6ad0ed024e76d3395","name":"rax-recyclerview","description":"RecyclerView component for Rax.","dist-tags":{"latest":"1.4.3","beta":"1.4.2-beta.0"},"versions":{"0.2.0":{"name":"rax-recyclerview","version":"0.2.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","dependencies":{"rax-touchable":"^0.2.0","rax-view":"^0.2.0","rax-text":"^0.2.0"},"peerDependencies":{"rax":"^0.1.9","universal-env":"^0.1.9"},"devDependencies":{"rax-test-renderer":"^0.2.0"},"_id":"rax-recyclerview@0.2.0","scripts":{},"_shasum":"d828e31ba015b853f6a7971a839639c23b7d6b30","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"d828e31ba015b853f6a7971a839639c23b7d6b30","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.0.tgz","integrity":"sha512-Zgywr9o46sh0kqaj7dF5Z9t5BM5qo802OAwoN1P+O1OK0W/ZT9HpXRtgBQBAahrgihoKklI/VRQehwwa+J4Teg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDU3nMjHvacfPPc/OR2TFIgbpp4kZZPJZ2vaArBfUJ9SgIgBWA0wV7JYT5Wbxk9qNgMyqYywGy1X/Bj2xoxFAnuyOc="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.0.tgz_1488362292184_0.327188340947032"},"directories":{}},"0.2.1":{"name":"rax-recyclerview","version":"0.2.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.1","rax-refreshcontrol":"^0.2.1","rax-view":"^0.2.1"},"peerDependencies":{"rax":"^0.1.9","universal-env":"^0.1.9"},"devDependencies":{"rax-test-renderer":"^0.2.1"},"_id":"rax-recyclerview@0.2.1","scripts":{},"_shasum":"2523e1b659cb01c2527091b1c4e144ba2ba7990b","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"2523e1b659cb01c2527091b1c4e144ba2ba7990b","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.1.tgz","integrity":"sha512-25Sv5AMKRg6E6DGKAxpm7RuWeCv5zfo70C2lBt7HnqCxr977qAeoOSoRfj/0CqAOydQMr/8glg5Ndn5j593jtA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDH9nTALwsGYXZyJsBbGQGadWXTrF3Yj0oh7SLJLSiRdwIhAJV9CpXwNd3pOcZhIEjetpAMWdYX8KCkb3mYSdEESUVe"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.1.tgz_1488449020746_0.46065558469854295"},"directories":{}},"0.2.2":{"name":"rax-recyclerview","version":"0.2.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.2","rax-refreshcontrol":"^0.2.2","rax-view":"^0.2.2","universal-env":"^0.2.2"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.2"},"_id":"rax-recyclerview@0.2.2","scripts":{},"_shasum":"aa802adf8579c4848345b26477fb740fd0653d6b","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"aa802adf8579c4848345b26477fb740fd0653d6b","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.2.tgz","integrity":"sha512-PdoU24FK4VaRPpXsAF+huZpVFLrIzFZclkUldzd2l9vonqman/46hHwSfr7dFDiyanyLyZqFputaJGJ6cGdOVQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHcLstZ9pTLMB/8pUMH88+stuYw1MzcQF71dIOsN5B+IAiEA7eYtX9DA6bKsAUDxNA/d0DdwtDE/jh8QA6tTudhNcFw="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.2.tgz_1488522930112_0.7714706377591938"},"directories":{}},"0.2.3":{"name":"rax-recyclerview","version":"0.2.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.3","rax-refreshcontrol":"^0.2.3","rax-view":"^0.2.3","universal-env":"^0.2.3"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.3"},"_id":"rax-recyclerview@0.2.3","scripts":{},"_shasum":"0b1b560bb2883d8ae3fbe6aaa6f59ec23ec0332f","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"0b1b560bb2883d8ae3fbe6aaa6f59ec23ec0332f","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.3.tgz","integrity":"sha512-PsiCzuHCxXtlVnKlPBHhD5doB0soY9Gnz+DCwDc/3P37j68OwSP/fxIET6jxMWKJG3rEOcR7wqXD4sI/4JpShQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvQaCrVQAKfDFY7V0jhuGWC78xIh30FoolCtW46Ip83wIhAIsiRHO+KU/sJxVvcUWqjYt9CUrFERkdVx3McaonOcg9"}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.3.tgz_1488966786619_0.05531726963818073"},"directories":{}},"0.2.4":{"name":"rax-recyclerview","version":"0.2.4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.4","rax-refreshcontrol":"^0.2.4","rax-view":"^0.2.4","universal-env":"^0.2.4"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.4"},"_id":"rax-recyclerview@0.2.4","scripts":{},"_shasum":"3b7fa3e218aaaf0bb36b69ae89b011f2dd9172fb","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"3b7fa3e218aaaf0bb36b69ae89b011f2dd9172fb","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.4.tgz","integrity":"sha512-9OgxcMJueOYIMDdZM1C7XhdXDs09WaOSgdfrfiQNARUpJdvKJ6z2hRMzh37+kHxFlEvUsbp0Pyap6E2kygS+gQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHLmbtsoeAVcpVIzpopqPQlxit6G4aWuQF+Dulfsbqx7AiEAzd53C393HUVyPylRXMiImRQ4sAVeoFiDT57AfjepPe4="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.4.tgz_1489648024129_0.23479872941970825"},"directories":{}},"0.2.5":{"name":"rax-recyclerview","version":"0.2.5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.5","rax-refreshcontrol":"^0.2.5","rax-view":"^0.2.5","universal-env":"^0.2.5"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.5"},"_id":"rax-recyclerview@0.2.5","scripts":{},"_shasum":"cb329522a85ab9fb149ad6c726075fee29f59f8c","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"cb329522a85ab9fb149ad6c726075fee29f59f8c","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.5.tgz","integrity":"sha512-XXklV1tBhMd3EEBhWnKpsPRk5NvhsFKpou1FvdQTI+dPYZVHbKJbgxIYMfGyy5MEW176kqRDRz8iPdIYrYcRJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC4b/RBg3q/jeCtvWkOR2xnSc0mbs/HQtHre7GwJcYrkAiEAiSk19Y5JHpjlA2/5MT6hhI0wG7Q/7RgY9GOn+2z2XN0="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.5.tgz_1489649924467_0.3031967314891517"},"directories":{}},"0.2.6":{"name":"rax-recyclerview","version":"0.2.6","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.6","rax-refreshcontrol":"^0.2.6","rax-view":"^0.2.6","universal-env":"^0.2.6"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.6"},"_id":"rax-recyclerview@0.2.6","scripts":{},"_shasum":"2d943e15cbcd7fbe97cde4ff4f209eaeb073613a","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"2d943e15cbcd7fbe97cde4ff4f209eaeb073613a","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.6.tgz","integrity":"sha512-tKxIeOwgdURPIQB47MoJ+3mp1oDO1Nf9NvUyMvKf8r3d29XsnoSjdIxtUxCW7tdzrkOfcRkzQwnoCx8ASx18IQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8APlVQTTTWd1F9eD//opD204vJS513uG/B+7nGyInJQIhAM+etuHtPPssTC8KZpjfpWhI02gHrOq9H49l1mmWB9vO"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.6.tgz_1490371884073_0.8576578251086175"},"directories":{}},"0.2.7":{"name":"rax-recyclerview","version":"0.2.7","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.7","rax-refreshcontrol":"^0.2.7","rax-view":"^0.2.7","universal-env":"^0.2.7"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.7"},"_id":"rax-recyclerview@0.2.7","scripts":{},"_shasum":"6506868642769435d9e89fc985e109591270ce9a","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"6506868642769435d9e89fc985e109591270ce9a","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.7.tgz","integrity":"sha512-N2WenyMXgYoZaWQBsml1XjnLzgGXG77dyQQ/jJR2M9Xca3qssh/+yiXRwFCNrfP4ZYxUWU+FAi5sl4nFDsX+Tg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5azw4tyECdIPGsxKa2mh0TkOevnzBKpWAxV2ixpuWOwIhAIMdrXDpU6N18409rxGZQWY8yakRaNKPEM75D6MO5sdZ"}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.7.tgz_1490411410726_0.2777102515101433"},"directories":{}},"0.2.8":{"name":"rax-recyclerview","version":"0.2.8","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.8","rax-refreshcontrol":"^0.2.8","rax-view":"^0.2.8","universal-env":"^0.2.8"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.8"},"_id":"rax-recyclerview@0.2.8","scripts":{},"_shasum":"807a66e41de7f554c9b8264312833aceb8b0398b","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"807a66e41de7f554c9b8264312833aceb8b0398b","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.8.tgz","integrity":"sha512-83Hf+P6pTcvm6EIh0RXCfnbUyVfeT20g1xk+908phOo/6r9/40gEt1x4/YTK9VkA0mlCcfy6j/1W7kYKaGRyYA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEV9o4uqjenPjqvdUqVOOOw7Fh731UZArTmD3a+Q3oxIAiEA1eJcYiSf/gZS0IPUFD454O2fmh6x4/gXKBAOSfpy/oE="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.8.tgz_1490456681966_0.8957633324898779"},"directories":{}},"0.2.9":{"name":"rax-recyclerview","version":"0.2.9","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.9","rax-refreshcontrol":"^0.2.9","rax-view":"^0.2.9","universal-env":"^0.2.9"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.9"},"_id":"rax-recyclerview@0.2.9","scripts":{},"_shasum":"db339c9d8260513ec82ad8191d80661498243fba","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"db339c9d8260513ec82ad8191d80661498243fba","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.9.tgz","integrity":"sha512-U9nDNoOHNNcdlaqEd244rb1vqexibBsIqkxNwux8VeAK3ptDTBsCndB6MdNm9+jBZa/LftgQVwhhH8JZPZ7vqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKGKPRBQ0dRPNhS+FnEph1QH4NK9sJKe++6/lckVnRgAiEAt2YKBWjjeMnjqH2znI+DJWaOOiTwrDz9Up/8oFaB44s="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.9.tgz_1490604314582_0.45544710219837725"},"directories":{}},"0.2.10":{"name":"rax-recyclerview","version":"0.2.10","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.10","rax-refreshcontrol":"^0.2.10","rax-view":"^0.2.10","universal-env":"^0.2.10"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.10"},"_id":"rax-recyclerview@0.2.10","scripts":{},"_shasum":"20aed44321592a55112172979a11c876283e35e3","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"20aed44321592a55112172979a11c876283e35e3","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.10.tgz","integrity":"sha512-P89rxMDIYxPHlaG2HX9021iZPV7iUhf7ybA8fjBK5wTi/csQFR3OKsSbMdgnfvKF2c9aszkhUrzEF18lG6jVOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEvgDqMv2/okucDaTcV9E698O0zfwt3AykC4RDtg/nJ+AiB9+oM7fBTk3dJxmzQFAGIs9iDohzoloQ13Vr3If8Qd+w=="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.10.tgz_1490839980874_0.1822851828765124"},"directories":{}},"0.2.11":{"name":"rax-recyclerview","version":"0.2.11","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.11","rax-refreshcontrol":"^0.2.11","rax-view":"^0.2.11","universal-env":"^0.2.11"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.11"},"_id":"rax-recyclerview@0.2.11","scripts":{},"_shasum":"5f020c1e0e34924f79e98061a91cb58189b7abba","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"5f020c1e0e34924f79e98061a91cb58189b7abba","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.11.tgz","integrity":"sha512-NmcvirjvP5nrq+24up58lePZIb4d2Kr4BRCxD7dmKX9uyHUwAl77h3Wne3zuxgpPgp9g2pHXlMHcwXFX0bd2pQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGviba8MShcaJkYhITgDQSO4E+tUulUq+5mlnPdEKkidAiEA2zjduIljxtUxR00XxTT57+5uD7/YUlVE1C6xTwrSrYk="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.11.tgz_1490844154745_0.2982510153669864"},"directories":{}},"0.2.12":{"name":"rax-recyclerview","version":"0.2.12","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.11","rax-refreshcontrol":"^0.2.11","rax-view":"^0.2.11","universal-env":"^0.2.11"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.11"},"_id":"rax-recyclerview@0.2.12","scripts":{},"_shasum":"01b86c5c449c652b0e8be8ca20830de1f192a1e4","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"01b86c5c449c652b0e8be8ca20830de1f192a1e4","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.12.tgz","integrity":"sha512-wkdl7wGxCqjPmjVrq9RteCdZ0jHaRQBoYQMyZnGTu1+G/jD70jkLHsPIL/LpRrdrWabdugXpskv7TY06JC6/Qw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGBkr+WJQ3wx2R+oz7lrIJiJr1oE/IeNdAC3HxAvsX7WAiBciSkPS+tul8U8ALemw8uq/tt5blNSQwEwxt+EWY2jmg=="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.12.tgz_1491812790358_0.45323762809857726"},"directories":{}},"0.2.13":{"name":"rax-recyclerview","version":"0.2.13","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.2.11","rax-refreshcontrol":"^0.2.11","rax-view":"^0.2.11","universal-env":"^0.2.11"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.2.11"},"_id":"rax-recyclerview@0.2.13","scripts":{},"_shasum":"7e5da28a28ea33dfdf75b80c3a6d7d9b58c0c523","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"7e5da28a28ea33dfdf75b80c3a6d7d9b58c0c523","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.2.13.tgz","integrity":"sha512-BG0Wahdzv9izM5F5MCRLRcVwXKOpaN02ZhccMM1EsAJMDFoaiCSSJluqQvM8lISoLNXyL/LtbXfcv3TeBf83+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAd3DPRJuyPUxtnspezDFPmv46rhCpkNglb8zsGci7ErAiAvXP6vYFA+f+CcPrVyWr5PmE736oiTXfThjkuufBlH+Q=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.2.13.tgz_1492152185245_0.8569085362832993"},"directories":{}},"0.3.0":{"name":"rax-recyclerview","version":"0.3.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.0","rax-refreshcontrol":"^0.3.0","rax-view":"^0.3.0","universal-env":"^0.3.0"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.0"},"_id":"rax-recyclerview@0.3.0","scripts":{},"_shasum":"38994496946ea0ff7000f755d53402ad7cc59eda","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"38994496946ea0ff7000f755d53402ad7cc59eda","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.0.tgz","integrity":"sha512-Zk2aY1Y/JLf/8TucXKkqfJVAy8PFDAM1sNP+HPeH2n7mLyjWjThnlCn8WdWsiIz/ksNkuJ/YW6hVwAU/Nnxscw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYllc28e347yeEjr5UxuR7TOFkqEFx6uL1AVAcoHYjfwIgceju8446bz1HONxFUxvN+c9jYdwQyAQ9KcsXBJMCTAY="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.3.0.tgz_1493007007748_0.4743634187616408"},"directories":{}},"0.3.1":{"name":"rax-recyclerview","version":"0.3.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.1","rax-refreshcontrol":"^0.3.1","rax-view":"^0.3.1","universal-env":"^0.3.1"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.1"},"_id":"rax-recyclerview@0.3.1","scripts":{},"_shasum":"afb061ca8cc1649c46e634ed1818e80c8908bfe5","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"afb061ca8cc1649c46e634ed1818e80c8908bfe5","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.1.tgz","integrity":"sha512-3kaRVL2XK2fyXQSxQWf/SsSXx0uK1Si9RM1sumBd9OVLUfwx1EunXcjGc4X1wiZKKg6p9s5J/yp3bYA9MlnQCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1KUMYG8/yAqKzo4hzElErp5xBTH6QTsWA8QJkyVaGpwIgYaq6nk/RiTZFdXk07SGurfNKgdnKtWxAloA7Qw6J/mA="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.3.1.tgz_1493019223867_0.6088112711440772"},"directories":{}},"0.3.2":{"name":"rax-recyclerview","version":"0.3.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.2","rax-refreshcontrol":"^0.3.2","rax-view":"^0.3.2","universal-env":"^0.3.2"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.2"},"_id":"rax-recyclerview@0.3.2","scripts":{},"_shasum":"85616501fa5565d9f7fe80cd13b201d22c8259f2","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"85616501fa5565d9f7fe80cd13b201d22c8259f2","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.2.tgz","integrity":"sha512-R/XxLZGrg3YrRPMQ3dik2SQI719AaIexyGAtUREbyanQsQFG2xOh0TEpTjJ7GjFDuK6w+2nGk7TsPh1AbMBuCg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDEdZpMYbmO2VdGzXBesYteb7XPMmxXGi2r+vBcmtqnygIgPYpQoLZhohOUk/hwoq24Rjry8astzHRib2zUkAzFba8="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.3.2.tgz_1493178092707_0.028790300711989403"},"directories":{}},"0.3.3":{"name":"rax-recyclerview","version":"0.3.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.3","rax-refreshcontrol":"^0.3.3","rax-view":"^0.3.3","universal-env":"^0.3.3"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.3"},"_id":"rax-recyclerview@0.3.3","scripts":{},"_shasum":"92061ade9f5aca49629fc281fcb0432e54429cf0","_from":".","_npmVersion":"4.2.0","_nodeVersion":"4.6.2","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"92061ade9f5aca49629fc281fcb0432e54429cf0","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.3.tgz","integrity":"sha512-ZFbQ/qfakOeUziHvoKaY2tTKFqkWy/W3ZNLdX/8f5iq14xx8CSb1AcuD2UTreRdJev6TRQZELEHEc1z1gxrPpQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMI/g+UteJetaJ6U7iY6Ogg5SyARh0rx0mKY0bCqCMxgIgNZled7OFM+s1v24r8QER1GGQyEcV6oiSNgH9dteazrY="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.3.3.tgz_1494570263783_0.1918074586428702"},"directories":{}},"0.3.4":{"name":"rax-recyclerview","version":"0.3.4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.4","rax-refreshcontrol":"^0.3.4","rax-view":"^0.3.4","universal-env":"^0.3.4"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.4"},"_id":"rax-recyclerview@0.3.4","scripts":{},"_shasum":"3f966451eec4a51652a576a4a58b556ae8a2d934","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"3f966451eec4a51652a576a4a58b556ae8a2d934","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.4.tgz","integrity":"sha512-OTRWv1UB6rpnPLtvTfB9kGhzt9c9Pg7wGbtzBsB8R4ocjtD+x9o9bGjbVbFbJPAk20tqgGG/KzLf5rHLrplfZA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6SZqE2IARr+P2VbOMMqFIw3GBKnu3XSyx2mPwVFmMOgIgbCk3xxiEnhqU7o3w428ZapOk+XtXggbey03WOjyXA8E="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/rax-recyclerview-0.3.4.tgz_1495186795493_0.3558773435652256"},"directories":{}},"0.3.5":{"name":"rax-recyclerview","version":"0.3.5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.5","rax-refreshcontrol":"^0.3.5","rax-view":"^0.3.5","universal-env":"^0.3.5"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.5"},"_id":"rax-recyclerview@0.3.5","scripts":{},"_shasum":"874dcb721fd694e0a47a3f8e959bc60021f8bceb","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"874dcb721fd694e0a47a3f8e959bc60021f8bceb","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.5.tgz","integrity":"sha512-tisIaMHZZ8nZqWchOZqfozNVmf+VhaRT5vcaStsKvVxPQHYYFVmTWeM6jWsbhdmoI+16+ANT9GF3ooii0PKOxw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYkihgsSbV2+L5NdQ+8+5NZ33hRB0O9Bpx68dHBO+bnQIgQGKBaZkgEAsSviA2Yq9opYp4RaYXeRdLpBsr+RUjs80="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.3.5.tgz_1495507817005_0.45949741126969457"},"directories":{}},"0.3.6":{"name":"rax-recyclerview","version":"0.3.6","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.6","rax-refreshcontrol":"^0.3.6","rax-view":"^0.3.6","universal-env":"^0.3.6"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.6"},"_id":"rax-recyclerview@0.3.6","scripts":{},"_shasum":"57322b0bf1a159db4b5273a2ebde3896a19bceb4","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"57322b0bf1a159db4b5273a2ebde3896a19bceb4","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.6.tgz","integrity":"sha512-cahzKFwuFHWdSs4YKfo5WJxvRWTKkl2fvYZnuZGSr89/xJIeJp7vAs1k7EPvzAqpn85huyIm3PBllNVljdUPeA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClt8tm9O0a+6HkOjnLJK28ekTm/fDaJjPwh4NYF4clvgIgSHbQC/dA5+lQEJO1h4GBY/kgIPDD7pl0b+hKz3Z+uok="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.3.6.tgz_1496305624468_0.5287897503003478"},"directories":{}},"0.3.7":{"name":"rax-recyclerview","version":"0.3.7","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.7","rax-refreshcontrol":"^0.3.7","rax-view":"^0.3.7","universal-env":"^0.3.7"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.7"},"_id":"rax-recyclerview@0.3.7","scripts":{},"_shasum":"b81f51bc22c8e9629fc994176a44bf85485e0f88","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"b81f51bc22c8e9629fc994176a44bf85485e0f88","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.7.tgz","integrity":"sha512-sQTklh0G6+c5WZKAvWVMnBGktpHkEwL9E8UDCyor9qLO462kLStLD8RjDo78Ptu+3brUpqBQPZEev6PrHn+nlA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCO7eV54yXp6hvnnAdLIA7YuIi11lifqFUx6J84bdhwxwIhAITwLyOkFgCfq8nWjtPdT2fsbF/OqHCmlVlydaVEM/9h"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.3.7.tgz_1497520641197_0.33781741210259497"},"directories":{}},"0.3.8":{"name":"rax-recyclerview","version":"0.3.8","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-scrollview":"^0.3.8","rax-refreshcontrol":"^0.3.8","rax-view":"^0.3.8","universal-env":"^0.3.8"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.3.8"},"_id":"rax-recyclerview@0.3.8","scripts":{},"_shasum":"d81eb6230bdea4a5255ae6be0e429f91693b0f77","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"d81eb6230bdea4a5255ae6be0e429f91693b0f77","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.3.8.tgz","integrity":"sha512-ULphEmmRbTV6q+KQ5dMDZ8VLpyPf2IfFO+V4L4EydPO+HbE8tE9rV8WXJBuFMMwdqaJTufSplRrLPoUBW9o9Sw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMyaokeDUslJPsZormrSrBOoWGKag54TcIRxFuCnzYpQIhAIZY+KcokQrFv7ih9Ro2JXC16eDhkdoP73G9nSqWbyDg"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.3.8.tgz_1498009299880_0.42205653828568757"},"directories":{}},"0.4.0":{"name":"rax-recyclerview","version":"0.4.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.0","rax-scrollview":"^0.4.0","rax-view":"^0.4.0","universal-env":"^0.4.0"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.0"},"_id":"rax-recyclerview@0.4.0","scripts":{},"_shasum":"97834cd603769d1847d5f92c8ffa957f00f57f36","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"97834cd603769d1847d5f92c8ffa957f00f57f36","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.0.tgz","integrity":"sha512-zgcK+41gnX9Rdxv9LRZHqmwcUjIflLGJ4aQ6kZ0naeCkmAoxAMBkXNmziFYrg70XfAKnHqqy5vfvU4Aut2luEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkNr0rj8C3KVFQS/xZb4DS6luTy5wCauSFeXSI1H9y/AIhALsG2A/5tHw83taZoZLkUGMVmJObRa1aMNHJjzdbSAzQ"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.0.tgz_1498527879528_0.3922495113220066"},"directories":{}},"0.4.1":{"name":"rax-recyclerview","version":"0.4.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.1","rax-scrollview":"^0.4.1","rax-view":"^0.4.1","universal-env":"^0.4.1"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.1"},"_id":"rax-recyclerview@0.4.1","scripts":{},"_shasum":"e35a9652562cf1a1bd7a0ec7b81070634d907536","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"e35a9652562cf1a1bd7a0ec7b81070634d907536","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.1.tgz","integrity":"sha512-OgHkU+MAGC9FpFRe/nDRvkW4JWVYy6Hg0gWjDtlpK6Upsab0QwhlBvpyOr//EAUH4kftCVIjZhHZL6jsh8BqMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgS/Qe0H6pAPVgRFIE3r9yBy7av405fIiAVp7Se37mQwIgJUfMQ+VKHEgEdK2FtQvRUCVGERL8Fuufa19x/ok3has="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.1.tgz_1498543856227_0.8012340543791652"},"directories":{}},"0.4.2":{"name":"rax-recyclerview","version":"0.4.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.2","rax-scrollview":"^0.4.2","rax-view":"^0.4.2","universal-env":"^0.4.2"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.2"},"_id":"rax-recyclerview@0.4.2","scripts":{},"_shasum":"1844373b0bb07f3a375bc9b3e8e8d65dba8c4b39","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"1844373b0bb07f3a375bc9b3e8e8d65dba8c4b39","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.2.tgz","integrity":"sha512-Y/PToYd123KnV76fxeSjtdEy3jHlST3YdmympbgPSHYT0mkHHkuBt2SixuZBIzmD+GKhCnReGumfq5rY0RHQQw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1SHhSKHpeSPkipk3WdgKeFRW7qV5oCngUILEm/sju/AIgboM0hoBlnah7cNx7GnprmH0QgbYAczaH29l+tQv2GqE="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.2.tgz_1498628330733_0.4938144094776362"},"directories":{}},"0.4.3":{"name":"rax-recyclerview","version":"0.4.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.3","rax-scrollview":"^0.4.3","rax-view":"^0.4.3","universal-env":"^0.4.3"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.3"},"_id":"rax-recyclerview@0.4.3","scripts":{},"_shasum":"ed13a1f4fe4459c3f8871475286a5000bba57b0d","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"ed13a1f4fe4459c3f8871475286a5000bba57b0d","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.3.tgz","integrity":"sha512-FgiHFLN2YlS4B8Z7ornjMpUB8vXobkLyVc0jh9pKCdVJfmC1GcBF/lfrNx5e7fNxjzJFSfID9C/c8cXcmhtAiQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCLKlWt3soPiRM7Aox3BxgTvt2++kzhteAS1Q1gkKKevwIhAMzG9kmRQ+7q7XCwJGGQKg0B1Aqa76e3vlBRkgK3xx0r"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.3.tgz_1499325428698_0.6215840806253254"},"directories":{}},"0.4.4":{"name":"rax-recyclerview","version":"0.4.4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.4","rax-scrollview":"^0.4.4","rax-view":"^0.4.4","universal-env":"^0.4.4"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.4"},"_id":"rax-recyclerview@0.4.4","scripts":{},"_shasum":"f0b62addef3428b25ec3f17deb891c4f4f50e530","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"f0b62addef3428b25ec3f17deb891c4f4f50e530","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.4.tgz","integrity":"sha512-R/R9+lJxc+xw/DzJ/BNoJTLnT32GlphiNhvZ3t6D3SvK3XOa5nJR1mUoiArpCqhDXZqng9hH6otp73NlxIU/8w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID5c1X/uZ3DI7bjQ5azkBg1vZ1Tz7UNz325HjC+0irOPAiBxwcHF4Zp4yzJj77GH6+q9100CJUwbXIHh4wHW9+d56A=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.4.tgz_1500021422862_0.194903870113194"},"directories":{}},"0.4.5":{"name":"rax-recyclerview","version":"0.4.5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.5","rax-scrollview":"^0.4.5","rax-view":"^0.4.5","universal-env":"^0.4.5"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.5"},"_id":"rax-recyclerview@0.4.5","scripts":{},"_shasum":"a283184dccb80a7eecc8aafc2af7825bfd269611","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"a283184dccb80a7eecc8aafc2af7825bfd269611","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.5.tgz","integrity":"sha512-ytgR58PcKp4hQNuoHEtObZDITEZ/li52X1r8vyzRutwk007fgyOTkfsOSRoseNl54QTaXKuh1JeOS6tPy2dySQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICZGzMClEw7b7I1yRYpEGB+b+AJ1Z2RLv5zLcrC3wUX3AiAuMWY3Nfrb9WekQgubpNdm33Y4c5BpBzqV/GSD68wm/A=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.5.tgz_1500616270552_0.021231676917523146"},"directories":{}},"0.4.6":{"name":"rax-recyclerview","version":"0.4.6","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.6","rax-scrollview":"^0.4.6","rax-view":"^0.4.6","universal-env":"^0.4.6"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.6"},"_id":"rax-recyclerview@0.4.6","scripts":{},"_shasum":"90bdf1989c160775c1209ae420af0312cf5fa72e","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"90bdf1989c160775c1209ae420af0312cf5fa72e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.6.tgz","integrity":"sha512-Cb1aiZENV07wj2Bibtd4scWvZ1BTWujPmcESsgRnAUuih9mXbVxFdCtbpfx5B0DKz26K7AgZMd3QNBfmogqK7Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPnAHwLu0zfNrb9BkK3BmLvA4uc+w8z2iqUjHDhzYt7gIgT8g2gDu7gyShHXo/UqDXdPKMzoYXCVj5LW3gVkQHICY="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.6.tgz_1500878135814_0.5438694644253701"},"directories":{}},"0.4.7":{"name":"rax-recyclerview","version":"0.4.7","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.7","rax-scrollview":"^0.4.7","rax-view":"^0.4.7","universal-env":"^0.4.7"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.7"},"_id":"rax-recyclerview@0.4.7","scripts":{},"_shasum":"653b8693b4033ed893c2c3a8b6ff6a9960573a9b","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"name":"yuanyan","email":"yuanyan.cao@gmail.com"}],"dist":{"shasum":"653b8693b4033ed893c2c3a8b6ff6a9960573a9b","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.7.tgz","integrity":"sha512-PDjwv+UK9SSVxKhWnIrLDyzS6u9jzrfz3y6Knhbc2kkjE/2FfIh1thXM9JQO2cJ5eDKACeZJlWRqGmmlWsR4fw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICDcG8ygzHdaA0oaqiMW+ub+BLdEEf2vMpTXuEbn0A0iAiEA4shAXBRmg5q2SjMK7zKKKEa+h6I6mjeHHIThp6cgnvA="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.7.tgz_1500884779516_0.5162603799253702"},"directories":{}},"0.4.8":{"name":"rax-recyclerview","version":"0.4.8","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.8","rax-scrollview":"^0.4.8","rax-view":"^0.4.8","universal-env":"^0.4.8"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.8"},"_id":"rax-recyclerview@0.4.8","scripts":{},"_shasum":"8ede539b4186df72fec56475c7a97fdf8e10a19e","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"shasum":"8ede539b4186df72fec56475c7a97fdf8e10a19e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.8.tgz","integrity":"sha512-z1s9ebEF26WIde1utSCpy0UGUB7HJVoICrqMT5orjJFJtfnnwREI/ioKh0UWxGabkWcF7Yw83Bq19mdVPOon7A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeWsdZdj9SZD7rsvaZqifFWEqsW0+plCt/NlYydEz9bgIhALnsCivGX5yFlKQZMd3X+KpV/PbQ6fOD40W7ix41swK7"}]},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.8.tgz_1501148555523_0.1281480777543038"},"directories":{}},"0.4.9":{"name":"rax-recyclerview","version":"0.4.9","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.9","rax-scrollview":"^0.4.9","rax-view":"^0.4.9","universal-env":"^0.4.9"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.9"},"_id":"rax-recyclerview@0.4.9","scripts":{},"_shasum":"f35fb61db97b61240fd8e34d43f7820b44fbe40e","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"f35fb61db97b61240fd8e34d43f7820b44fbe40e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.9.tgz","integrity":"sha512-95PrsunkZCtpRSDwMM8cZzsfNsWYPWUK2120+j8TFcUhfUEMY791Eq42mdpACF13a1FU5reer8/m7F1H3124PA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpwGGwanSAK6qMHkfDTLlBIF50sgiYs4grN+V7eCQEYwIhAKgO1LppNIvkj35dgh6U0jBpXG4/GNdUKFLNZ1CtGRbm"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.9.tgz_1501666858299_0.41981373145245016"},"directories":{}},"0.4.10":{"name":"rax-recyclerview","version":"0.4.10","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.10","rax-scrollview":"^0.4.10","rax-view":"^0.4.10","universal-env":"^0.4.10"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.10"},"_id":"rax-recyclerview@0.4.10","scripts":{},"_shasum":"fa7b0cb5a3d6066357c503cfacad8c59194d6534","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"shasum":"fa7b0cb5a3d6066357c503cfacad8c59194d6534","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.10.tgz","integrity":"sha512-lx4WOVrXqXlh0czH7Dv7y7EhJA2INolsqUwrdA2JAGazIqq3N4kz+7Hs7zMYVZDGjf0Fk8/Ekf16n45LAGrnnw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/fiIr9/yymKEuWwn5jTkgSg1rPDlCLbdHHKsC6L+cQwIga8Q4QrmUkSzF5b5vhKKvXFaVMV0UlDgpGxsM+y3r5a0="}]},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.10.tgz_1502428446821_0.3279555747285485"},"directories":{}},"0.4.11":{"name":"rax-recyclerview","version":"0.4.11","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.11","rax-scrollview":"^0.4.11","rax-view":"^0.4.11","universal-env":"^0.4.11"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.11"},"_id":"rax-recyclerview@0.4.11","scripts":{},"_shasum":"0f86b19f644baa86f8f4f4065bbe5ac8ef6685bc","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.2","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"shasum":"0f86b19f644baa86f8f4f4065bbe5ac8ef6685bc","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.11.tgz","integrity":"sha512-buUAVmtqaLm4g2shNIPz9i2Gk0sD9le9mpV69D/pzJh4GeQZ1R+qlM38eqNjSwRM7k/s5C+B7LqzMRYxNFl4/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfSviRWuO4OotSqn1u9B/KgiAnThVVGUjhGiRv7V12swIhAP+AQ3XyYGMmHByhlI1g59HyCxtoz8n7WCD2y6TS+7a6"}]},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.11.tgz_1503461013037_0.6579992135521024"},"directories":{}},"0.4.12":{"name":"rax-recyclerview","version":"0.4.12","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.12","rax-scrollview":"^0.4.12","rax-view":"^0.4.12","universal-env":"^0.4.12"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.12"},"_id":"rax-recyclerview@0.4.12","scripts":{},"_shasum":"87bcbb33aa6d63eb1c6d8ed3d859142d0f8b036c","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"87bcbb33aa6d63eb1c6d8ed3d859142d0f8b036c","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.12.tgz","integrity":"sha512-1YcOl4RVzfqLbtidc7u3saT3/DGFKLtV1xhhsoPdEwBKRHQrJVYK7O66xd83FevSUQo1khbXo9Ffasrkbf83kQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBxm3xHLS9Gvo1vf1wrLkiBiTL64I42/PK0eHz50LLE4AiEAstdDM2smz3Xjwz/qIgnRwtZOW4KrvsEsV6jOZEygNf4="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.12.tgz_1504854245065_0.7195715068373829"},"directories":{}},"0.4.13":{"name":"rax-recyclerview","version":"0.4.13","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.13","rax-scrollview":"^0.4.13","rax-view":"^0.4.13","universal-env":"^0.4.13"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.13"},"_id":"rax-recyclerview@0.4.13","scripts":{},"_shasum":"693629619403738eec6e101bec386fe4545acc91","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"693629619403738eec6e101bec386fe4545acc91","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.13.tgz","integrity":"sha512-byNVdMUbAL24/uWq6vDL90FJCrSxnQK4IChMjERsMjua/fLgXtfefO3ezHkcYH0Q1JGG6rbtq7uVwuAr8SgZ+g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE8N9w6B79UbyCMdYVJMzk+BZ2DZrNhKxXLI1tuEilt3AiBdaSC96hI7SrQEpBdSvpSQsGkRYCpd1VzOube3F7OrqQ=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.13.tgz_1505442427283_0.021178197581321"},"directories":{}},"0.4.14":{"name":"rax-recyclerview","version":"0.4.14","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.14","rax-scrollview":"^0.4.14","rax-view":"^0.4.14","universal-env":"^0.4.14"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.14"},"_id":"rax-recyclerview@0.4.14","scripts":{},"_shasum":"969f58fc30e1b7390cdc5d5fcef9d27d4de1edf8","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"969f58fc30e1b7390cdc5d5fcef9d27d4de1edf8","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.14.tgz","integrity":"sha512-jad+QF1Odott1uF20LSFvxiFyb0CqAxbaN100182KH/Jk9e8pZqu4rdYp9nj0JpE2QSx4ints36Ccpts8d+GnA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtZFXvmb2ngCqfiun77zI/IQzWHQZiuDHrgndLend/8wIgZBDmBCa3I7LKBT59BLXYlfIXgvuxJbWPUjg69kPX4U8="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.14.tgz_1505988986221_0.6074267893563956"},"directories":{}},"0.5.0-beta":{"name":"rax-recyclerview","version":"0.5.0-beta","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.5.0-beta","rax-scrollview":"^0.5.0-beta","rax-view":"^0.5.0-beta","universal-env":"^0.5.0-beta"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.5.0-beta"},"_id":"rax-recyclerview@0.5.0-beta","scripts":{},"_shasum":"d105b048bddbc47a894e0b877badb6f066e5d1c1","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"d105b048bddbc47a894e0b877badb6f066e5d1c1","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.5.0-beta.tgz","integrity":"sha512-FUEWsUPmBB7plekqPzk8QAjiA2c9y6LKB9A6SPSsd0IcDKjCZ8jUAywkszjHJwK4qFyo629FnHp2AcjfyAU5dg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbMPj8FQJZuk6kavOOpI5Wt59gwzO6hgwjpJ2GgV71xQIhAOUVNPCTtf+EyQST9uwXgDJXe8ZqVtvtjOm1ayw78dWk"}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.5.0-beta.tgz_1506334655478_0.09279353707097471"},"directories":{}},"0.4.15":{"name":"rax-recyclerview","version":"0.4.15","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.15","rax-scrollview":"^0.4.15","rax-view":"^0.4.15","universal-env":"^0.4.15"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.15"},"_id":"rax-recyclerview@0.4.15","scripts":{},"_shasum":"1cf4b9e160eb157ebc8135b1ea9736fc7f744fdf","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"1cf4b9e160eb157ebc8135b1ea9736fc7f744fdf","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.15.tgz","integrity":"sha512-i7ocPaOyqcCxkr1IZBBx8x4ma5svSef+P1LDGJSYfVLiWf20R+u5+rXkHahAUo8077/3DslqG0FoIN22SxP1yg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2OBW+uTvwD90yMAfyeFL+A6Ywp7IqKf5RYWVAMmP+3QIgUmOV+c06hbOINyA3Ul2Uw4c/7tQZR9MNjzjnhQFWCe0="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.15.tgz_1506407153660_0.9735737049486488"},"directories":{}},"0.4.16":{"name":"rax-recyclerview","version":"0.4.16","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.16","rax-scrollview":"^0.4.16","rax-view":"^0.4.16","universal-env":"^0.4.16"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.16"},"_id":"rax-recyclerview@0.4.16","scripts":{},"_shasum":"e0826fb652d33beda5b8e7d168e4ed638843074a","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"e0826fb652d33beda5b8e7d168e4ed638843074a","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.16.tgz","integrity":"sha512-C58ToSgT+C9kbbQeqP2ZOIzYoQRujuVlMJMSr5XuymZzRYyMYeimgRfYfVcYMXpwk519qW4Bm+Uo35MZU0AfVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICHaqtjcTrEaxCgCCeWdysVhFrQkv8qYxcWfeun+jzAwAiBo20dW37ACNfToXx2fz3XrrMQK0W+lvR+5eoH4I2n0lA=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.16.tgz_1506586015086_0.5636366121470928"},"directories":{}},"0.4.17":{"name":"rax-recyclerview","version":"0.4.17","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.17","rax-scrollview":"^0.4.17","rax-view":"^0.4.17","universal-env":"^0.4.17"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.17"},"_id":"rax-recyclerview@0.4.17","scripts":{},"_shasum":"2bfd6b4c1b68d1d0a087b21972dec3ddea2f020d","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"2bfd6b4c1b68d1d0a087b21972dec3ddea2f020d","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.17.tgz","integrity":"sha512-jzWXyFKqZYJx1SeMqmZ2CKbUK1e5PqNh4U4mwVSVdq2vVJfZOnoFS0ohJOGd3hiyNAmdkgn1NeOhD13+fyQcQw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICBn/Nkjn5pxQPSVbBdtWKxts958AqouaGlmUQv0Z9T2AiB+mKw/RZlFCzSsjKCqWlPFVul771Zbcj9G+yccnFlQpg=="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.17.tgz_1507699910009_0.9209997646976262"},"directories":{}},"0.4.18":{"name":"rax-recyclerview","version":"0.4.18","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.18","rax-scrollview":"^0.4.18","rax-view":"^0.4.18","universal-env":"^0.4.18"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.18"},"_id":"rax-recyclerview@0.4.18","scripts":{},"_shasum":"a879a9d86ae1868abc2a2d542942e2265781a17e","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.2.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"dist":{"shasum":"a879a9d86ae1868abc2a2d542942e2265781a17e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.18.tgz","integrity":"sha512-EK1dEaIkA9EPnW62ENRpocxuAcbCI6DOFXgacPs21rpsREcpq2l0+W+2+m5M8ERQpdZpW5fVSZU2qAK7cjR6tQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbqIqWwcHOwqVAbRxy6P8Cv7jkdn8906cNWshJe15JbQIgFtJgQNutggiQsqqKNVqm7Uf/X1cK/4W6BIaWpOMIhvs="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.18.tgz_1508137563009_0.3948747075628489"},"directories":{}},"0.4.19":{"name":"rax-recyclerview","version":"0.4.19","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.19","rax-scrollview":"^0.4.19","rax-view":"^0.4.19","universal-env":"^0.4.19"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.19"},"_id":"rax-recyclerview@0.4.19","scripts":{},"_shasum":"1253fe0709785645c82742acd50842f26c555582","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.2","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"shasum":"1253fe0709785645c82742acd50842f26c555582","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.19.tgz","integrity":"sha512-A58M/kMMUbSoGtNjXIf+vJv1UwR5rNK4UcjqRGWAWLyUs5siWMmr8bT3oWXF2Jl9pKQGWzDsH6i2sEpi9R5EVA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDRUTuNorcs2YNFP1Nh1p2SsO4H5Eix8t/ygXFie64PBAiEA/y1s2Mpgxi2Unb9XSebVFCGtCBhLHyiza9gd8JfiJWQ="}]},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.19.tgz_1508225799962_0.2986352858133614"},"directories":{}},"0.4.20":{"name":"rax-recyclerview","version":"0.4.20","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.4.20","rax-scrollview":"^0.4.20","rax-view":"^0.4.20","universal-env":"^0.4.20"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.4.20"},"_id":"rax-recyclerview@0.4.20","scripts":{},"_shasum":"3367a28b8929878299dbe856f3880a953776b000","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.2","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"shasum":"3367a28b8929878299dbe856f3880a953776b000","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.4.20.tgz","integrity":"sha512-m2SxHp8lrjOF7zTKZp8htQVSU3qE1w13qV5R4yTJ+1lebDTCbJ+MsG/2aT7YJz90K4JDClOV3u515JtZs6Lv4g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDtFcycQC83aSwitfreUEkOQOOd/80SfmcLViAs9IAQiQIgMtHNmJJUptf14wiPA108AveDJ34YPJEXqZIT4wRV2C8="}]},"maintainers":[{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.4.20.tgz_1508312863689_0.27886424981988966"},"directories":{}},"0.5.0":{"name":"rax-recyclerview","version":"0.5.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.5.0","rax-scrollview":"^0.5.0","rax-view":"^0.5.0","universal-env":"^0.5.0"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.5.0"},"_id":"rax-recyclerview@0.5.0","scripts":{},"_shasum":"00ed58b1d006963624f1d921fa45da40b2364c94","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.2","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"shasum":"00ed58b1d006963624f1d921fa45da40b2364c94","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.5.0.tgz","integrity":"sha512-CxuMphj8iBOGwvqw4+iF9PVVggpm5eQrVPXuG6RDXWDrS/UXMr/UM4mVHLljOfkfxLCxyE95OPGqbX/cfQbDPA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzbA/xs+MvxPzzW53xwJDPqyIYWzM9qNldr8JzFGORigIhAJSH/uE+Zsjqsvj3hEyJFXsgqmCYkrjeQxPvjjmgSuZX"}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.5.0.tgz_1513140843282_0.683736790670082"},"directories":{}},"0.5.1":{"name":"rax-recyclerview","version":"0.5.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.5.1","rax-scrollview":"^0.5.1","rax-view":"^0.5.1","universal-env":"^0.5.1"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.5.1"},"_id":"rax-recyclerview@0.5.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"integrity":"sha512-CvDBujJkms0H/zv/07nSIathB23PDVmTWMyDGag4V2ncSrEFSrFzNUWpbSYrDaFx2DzGE7Z8niQv0cAjEqC1mg==","shasum":"6d401d04c4619b053ef2f91d07905d01d65fa376","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.5.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDh/4wmltyWuPji9Vcdhdqw4X1k8CzBmLLYk5Bv/S/5UAiAM0I/2jWVWlrV6OedGQag+fxgBq92jgGCLSkLnIn2Lqw=="}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.5.1.tgz_1516880698578_0.3961257969494909"},"directories":{}},"0.5.2":{"name":"rax-recyclerview","version":"0.5.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.5.2","rax-scrollview":"^0.5.2","rax-view":"^0.5.2","universal-env":"^0.5.2"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.5.2"},"_id":"rax-recyclerview@0.5.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"integrity":"sha512-mnsN2o/TWjlipVVisNhiqs6B2Hd/o5yhpSnGbCJsDCO5FUg2U0aC8RbOmDY4jceeMBWJgPROW3U3iS3yZmV5gw==","shasum":"a90dd8753fa93a4bba5daab75ef6cb7b33790944","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.5.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiGJZqEcTQBY7wPAs9MmanpyXnIJfRbMdBrqw7z/70SgIhAJxGnJNvO6vy1SXqvBmZxhx5KEyM5QYcU4D/f0J8lYG6"}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview-0.5.2.tgz_1517302882843_0.9736125408671796"},"directories":{}},"0.5.4":{"name":"rax-recyclerview","version":"0.5.4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.5.4","rax-scrollview":"^0.5.4","rax-view":"^0.5.4","universal-env":"^0.5.4"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.5.4"},"_id":"rax-recyclerview@0.5.4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"yacheng","email":"narutosun2@gmail.com"},"dist":{"integrity":"sha512-nH+wrjwSo9HX0LIW3VqEkZjeKyQYEUYMsGQ+M0Gs33etLIgEBl5lyO5k5SO5qxvfKTte86adAHyzxc/gXklcsQ==","shasum":"efea5740f53ba91f7d1884faab0b4d95e0b4dcea","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.5.4.tgz","fileCount":11,"unpackedSize":255513,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPSlGDNXabpJR+WEupvgASpNe5g32O6suWlnPiJ+pHHAIgY5yADzBi4KyPKIKawwjot6uHQkJ9FigpHop/wnpXO+g="}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_0.5.4_1519961406913_0.3316194696439594"},"_hasShrinkwrap":false},"0.6.0":{"name":"rax-recyclerview","version":"0.6.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.6.0","rax-scrollview":"^0.6.0","rax-view":"^0.6.0","universal-env":"^0.6.0"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.6.0"},"_id":"rax-recyclerview@0.6.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"yacheng","email":"narutosun2@163.com"},"dist":{"integrity":"sha512-fIyjG6bqCYIbFoHOo6IVADPE2ISIv0903KCVcet4xGiFJYRidaZcM5SEsWtpnVeFtzHaBp8l2fYZ2xRCDUGkXg==","shasum":"b9e594caa47526adba38a92ca57c26f08d09bb64","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.6.0.tgz","fileCount":12,"unpackedSize":270526,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHjxfYU2FawF0kvlMNgI3fZgG8wik0YKkkJ7CS/EbzMAIhAL8o7ZYsVopLH+oWa7QFh/ykewVeYkxGw7qg1eYlYih4"}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_0.6.0_1523331762778_0.3764001491437645"},"_hasShrinkwrap":false},"0.6.2":{"name":"rax-recyclerview","version":"0.6.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.6.2","rax-scrollview":"^0.6.2","rax-view":"^0.6.2","universal-env":"^0.6.2"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.6.2"},"_id":"rax-recyclerview@0.6.2","_npmVersion":"5.5.1","_nodeVersion":"8.9.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"dist":{"integrity":"sha512-NXgsLTVgL/FNRdTfuVpOASCjiy7+T4T0SWjqyzSR6bBSbicZ9ZkJSg3lUXuEyrOsdpCDqeP+jM4rbuYOobimkQ==","shasum":"ebf0207db111fdaa5fcd05e706f2c35164cf06f6","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.6.2.tgz","fileCount":14,"unpackedSize":230362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8VNjCRA9TVsSAnZWagAAY+UQAJoBEb7/SuZJKsHxpHmA\nuMVpTndzDurl+6VnAl8LzYaods/vE6Y0+W/P9QV3/NwuwJNc+2XdYU/9srv0\nBJWf/dckIxtOIerUx78WIUpviN3AYQ5IM4xRuHsHf2v8jHAQullxpwwNmlOM\nH2RaKKDZktcKa9hCyw/QJsyixMTHOjPg2owywmauhPsRQSjPxztocKMrVQDK\nYwqA5yvay2oThhr7e9rbFC/yjaxZUuK6oxfeCYajYMohR78BZ4P3ABWg9WW1\nxuWBm+ffCRdh4bNYB2+Ww4xuVoYdV1qx56J//HotvdG25XDANHwNCWR45uij\nmQ/7GIPV33+kMq+OOD7fTuXxEBw19z+kYjcd8LFyjyRtIj9ZrotyK4jAVGgX\nKYxMvKdGz+DWJS4BQpZUrFepmvfmUjt3zi7P+Zzlo6FmiNxJKhX9LSJwBWDF\nQWFKn5iZlzsvyvI055LrcH8BB6RjmSm2GWM1yLecxvxyflDEpjPB1j9BAU+3\n0e/BxBC2m3Ff956TQyFRMn/2ZcJAF9uV7sVRwCtnMFIQuH3hloXQjzSUk0dE\nDrdtQ3W5xwwHvnbYNebfQxcIThr+vySARvhukvgWqhI87zneP1JYnUfDH6gx\nxDSNYbYeG0kv2YGYeSrvJE3fM5dPmtWbP9n+F1RMgns1rEab0nPZdKAwFY6H\nK7yV\r\n=jLt3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQu/hXr9y/wrjeVYJ+c4guLeEBW7f+xPX110SZIRXeLwIgDBb6oulv/2QbcoOciP0vwY/mEG8MKWk+YBa8Y4bw6KI="}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_0.6.2_1525764963102_0.8778541803197024"},"_hasShrinkwrap":false},"0.6.3":{"name":"rax-recyclerview","version":"0.6.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.6.3","rax-scrollview":"^0.6.3","rax-view":"^0.6.3","universal-env":"^0.6.3"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.6.3"},"_id":"rax-recyclerview@0.6.3","_npmVersion":"5.5.1","_nodeVersion":"8.9.0","_npmUser":{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},"dist":{"integrity":"sha512-JoXODzaMn+UiMgrxIs+spytDfBV5lW++TQb2kUc5dhERYryFTGiB9D1IxlWtvFlFHApCXl4AWtto13yweRPHTw==","shasum":"dd9d61546e33340555b1af0a47415c682978bc23","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.6.3.tgz","fileCount":14,"unpackedSize":274866,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8bsbCRA9TVsSAnZWagAAwPMP/3Lypa3UIqkhJ10HdJVG\nACxLUJj+k1EkMSjAJ7xlzzxBgP2JMR2m4yC/V63CM4pvjC1R/jkbzxdRyFdI\nGW+WtKlWEp7wf46nyvoR92puzA3t2KKOoboGsrSRa6i1kvGSpblWKTG7nFhE\ng2xf1KlOMPI2GJ80RAUpxsqOw1fiS0SQyGUXFvniWXxpvLDvQiFoyyuKDlgw\nWQ+sq+eHL85u1TdyAnQYBdeqE/9In7Ny4sqt9NKIcMuJ4DcZW8oO6r0wfzrV\n8D6J6gkd9eA+8KzWymMzxLJNNRdXfSwvmUJeOmV+tr0WR4NEEE3jC25Ocw2G\nJGf9yRgiGOk5GLMHIDrdLamc5OVgJOpI/PLKv6lEjy3NcZNqKFbHgYht9mlc\nCicCVOsHWf64H1Af9j0xjnvzIdxN0j3NIujPge/XafJ4eyEsxxQIabjb9fv3\nvn+eqGY3WnfDzGSqndv6y7HKhFy2+W/hK0Cfzsob4DqSDbu7RQP8TAQOWme7\n4G6fzPHqVXY74XHJz4MrxlG4RV9HPROuAOtjzJgZvI5rIxbuCv4m2B5q4EkO\nq4pjJ0Fv2axczc7rHGq+94qjUGm25e0lFvRHcdTainxRTdcs1An7n6Qp6Xuu\nseLnNGwpRxIOH59yx3DemzB3Gr7xHU6/EA4bVs9X/NyaTpxr6LFJKGhWsE58\nFwz7\r\n=+iVw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICPBViNXGxFB829Edpcig58PefmMDl14gUnINNdqjLSWAiEAnuK1X+cN2poJXMQiS9Xq511AgNXrADy+9cuuflv5h8A="}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_0.6.3_1525791514006_0.8892594944447396"},"_hasShrinkwrap":false},"0.6.4":{"name":"rax-recyclerview","version":"0.6.4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.6.4","rax-scrollview":"^0.6.4","rax-view":"^0.6.4","universal-env":"^0.6.4"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.6.4"},"_id":"rax-recyclerview@0.6.4","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"yacheng","email":"narutosun2@163.com"},"dist":{"integrity":"sha512-aMV+e8KHQE2/xeRLffkS9EKWlgBMoANfiXck40u3a0Xdd8YapCFZj260CyC/J1fsJ5pd6gv/MRtam997Ud4g/A==","shasum":"e4cd80a306f08577a4cc74d1d5f36479b9c0be73","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.6.4.tgz","fileCount":14,"unpackedSize":283735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGNT7CRA9TVsSAnZWagAANFgP/jGkzhqyqRIJBhU81F5t\nR1wvRTD5clWGVscI+1nm7mWHIjspGaNVD2/dipGlTv/fu8PUnulCbIHu4i60\nEmDrCFnp0tjkQxLoCW9wxXQbL4UEhX1R4FYwxuOg78XKM1ESbob5fj6EGwdH\nyQvl7C42bTfhdc55GaDduqgKNHTft9MlSsW/hi5HWFxrfaLUZW1A8p2eRxVb\nGhVjqXJrnmAfYIAmbrOVC59L5uNX0BAfw+WIqOnNDeEv75jxOxI9ipXfOIyy\n8nOHz5kVDE9gk4v5SmuGPVMgiSqtIg5gweN++x1EvahcFZvk5e0Ddc5iGcnd\nuliFNAkquuqINv0zweEpwrDHjSqtuL7w4OkAH5jVsPIKJNlCJ0C2yv7XIJ0E\nkXrTg077VHe4ZdNJQv7zdoPwCj/Fx7yOZoAKlOsBxmngmgc7MIpzPYkRXAja\nckJQzQd7U1ta/XF7IVS9ztKKLMCz8+qBhFwQWq3B7Sy70X1GKaTBgx4OSbci\n2XGoQyNf+X+LCR2e+nWe3Mz0dEpYc3wK+VsJFK/0FP9tOGu6bDF+sywlxi9D\nwBrS+yehZOUKZzO0kKO367DYOO1K5Nct/YlytEnmguQW29gvw17Jt0RBffwl\nwdms92Kzz0RU1msx1oRruKEVmjuydF3uRsKdLTVs1wpqaMqe4rYfhKW3jbLn\no8ib\r\n=CI8G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2jGQ21swBGUlnwhnjMhVYkZ/RjOLjNJbM3OhtNoWxRwIgFZH0yl6topiQlsSBo2iYfhJ1FCJmXeMKYWelv605m+Q="}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@gmail.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_0.6.4_1528354043095_0.34411201152261683"},"_hasShrinkwrap":false},"0.6.5":{"name":"rax-recyclerview","version":"0.6.5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/alibaba/rax.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-refreshcontrol":"^0.6.5","rax-scrollview":"^0.6.5","rax-view":"^0.6.5","universal-env":"^0.6.5"},"peerDependencies":{"rax":"0.x"},"devDependencies":{"rax-test-renderer":"^0.6.5"},"_id":"rax-recyclerview@0.6.5","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"yacheng","email":"narutosun2@163.com"},"dist":{"integrity":"sha512-Dhoo1HMLVGlPe8bj1ZsUfA4n8THET9txwAmipyTLh0aOtKI0O+uqZUVYBTS2NN7XOXfcHKZTg8H0yjf8rOY1HA==","shasum":"090691318c24a7ed6aca966da04abe8eb2e391bd","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-0.6.5.tgz","fileCount":16,"unpackedSize":360248,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbfnVhCRA9TVsSAnZWagAA8ggP/3BJyACwnHv9325mUiiG\nHVrSF1lfeaTmJ7kyS1bEdkt8SD3aZ6h9PyGm3y6DrPJVYnbSPiYlcYwHy/bQ\nE0v8/jUPNmWYpAItfAwNsjxmDd1lTsJ5ieqY1ByV8jSSk7Jz+2uabflBtpjf\nRmVDylxF3dl2ssBcqMtlDdSb9x+MYOZdvlvLR1+TYyVhPgltVV6rwDNihVpT\njRzBFK2eb2ATIhsRwASftuiggWbIRVIQBBhSrZAPTFjlYiFE789lQV3Qmt91\nLszN9BSwap8FeaHciH4fezMrRt+K0MnpxITFHbmSa3XzM9aHr3fHSoWSs2Yg\nYFsrT5WdIbl+Rb3YYZ3I5isI1jgE/mCrOu074K52MXwfyY4llphEvqweeen8\nk20KQEyWPsJyQ9e6q282XgDhhI3Pz0xWQa31pWNNdwbUqv7CkIIwPn9TerXx\nbIBtREbdUyMtpn1+89wR7iJiRUceQucHqKQ/1PINYPX/zXunh4dS5JMH1SWT\nzWfDdu0IbTfuqT+7WR2MCSWjgH8OgxawNbpAsY4erFdpQ1dhzVJFC+01h8Vm\nqfUqe9KvrCCikEXvA2Ayb3pRbLX6IDCXZBtztJpYEuVX3cWbB8Pbn5L9t3V5\nV6Vy3Rdy4MeKAHxtYKVYXdt3QGjkDk6pwmDCmFw7R4w1nvkx4SFKYzm5Ja3g\nZi1k\r\n=32wc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID9d3P3arQR3mYSegW8cO4eMwqswz+Dz+q3Dn5RiEU3pAiBsz9YBdVeuX7nht7be6/AMt8wnAI4Ym8MZRT6RgbRl9w=="}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_0.6.5_1535014240474_0.749669792629533"},"_hasShrinkwrap":false},"1.0.0-beta.0":{"name":"rax-recyclerview","version":"1.0.0-beta.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"start":"rax-scripts start","build":"rax-scripts build","test":"jest","lint":"eslint --ext .js --ext .jsx ./src"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-find-dom-node":"^1.0.0","rax-scrollview":"1.0.0-beta.0","rax-view":"1.0.0-beta.0","universal-env":"^0.6.5"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax":"^1.0.0","@babel/core":"7.2.0","@babel/plugin-proposal-class-properties":"7.2.0","@babel/plugin-proposal-decorators":"7.2.0","@babel/plugin-proposal-export-default-from":"7.2.0","@babel/plugin-transform-runtime":"^7.2.0","babel-plugin-transform-jsx-stylesheet":"0.6.5","@babel/preset-env":"7.2.0","@babel/preset-flow":"7.0.0","@babel/preset-react":"7.0.0","rax-test-renderer":"^0.6.5","rax-scripts":"^1.0.0-beta.2","babel-core":"^7.0.0-bridge.0","babel-eslint":"10.0.1","babel-jest":"23.6.0","babel-preset-rax":"^0.6.5","eslint":"^5.10.0","eslint-plugin-import":"^2.14.0","eslint-plugin-react":"~7.11.1","jest":"^23.6.0","jest-localstorage-mock":"^2.3.0"},"readme":"# rax-recyclerview [![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n","readmeFilename":"README.md","gitHead":"34302f327454bd7e55919c984db7525a72a8adcd","_id":"rax-recyclerview@1.0.0-beta.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.0","_npmUser":{"name":"yacheng","email":"narutosun2@163.com"},"dist":{"integrity":"sha512-zPv0Lek40c4CEmlVU73i95IbXpNXMwKHQvyjBZSAo3S01MZWe2ImjzL6qKzfsdCEle/PHwSK15Xg2O36yWScLw==","shasum":"10a3f52f08639c0ff7664f52f3aae56076a4086d","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.0.0-beta.0.tgz","fileCount":10,"unpackedSize":264408,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcrEd/CRA9TVsSAnZWagAAw+kQAJKmBa3IfmnW97o8SHDu\n5VKPb4y92w6g5/S1S0WVo6hrSN49YZSDiJLQf7vkgC0bqmt4m+k/NPyaWm8k\n2GUi2aIk5Nd4ZSemA0dyyFHKpcrLMPRBUXv/Gq0N/TmF9WQ30nJe9fY+IlsT\nhNNv7mxjHOtO0ZC3ns1uLmJQHm81o6iaShtNmYxLUxNmRXWyZpyYSOhJtwJG\nwly3Eqt1u2R3msEqMvO7nwogWSWfrMZKEFRKw2VcUY8sUT/gKpr/2Y23vK7N\nfLPHUWmaqtGXPrL+fP7uC2sOmlUv81gHTobnReh0V2a6bIKE6Rc7/VC7smFF\n/Q/jakVxjtnTE9kC7xmmhnXxi+1aW8N1Jmy2fX2fmXUdn+s+ZiVp1mb0y0qN\nG9KhvaCaW4p8o9WfNQZlJe+4OQ2iEgBUVgNxTY0JxqaQB/92rhZUMRZfxKC+\nlv52eWsdKtaAfpSRJipV5MiIUw4xY2zdDCF/ZA6W7oHX3fXHrD+f14uPFowG\nh1uiv+WawtDtPJlIKbSvZm5ruq1Z/Dsq2lM/4TtnpPlVQgCdS2udTdVF/K97\nrlyIcBhSHcwkrYl8OGIOmyYbMlKoysMOcnnlm8JMKCIEDGbqpSn14Kw0Sxqk\nBGc4EkcMzhFgCyZtf+AMCnaKQrHCY48bV+uPVAnNUp7phC3UNCX0OLlCVN8D\nVCrK\r\n=Zv36\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCe/fWyHNIk6rZHyk28+u6QltrQnC0wNnN0pTyI0BnuEwIhAOYjbaWRtWg10wS3WcVTMnbpHGGM658QZTCKNiGfHrd3"}]},"maintainers":[{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.0.0-beta.0_1554794366317_0.6256320577059318"},"_hasShrinkwrap":false},"1.0.0-beta.1":{"name":"rax-recyclerview","version":"1.0.0-beta.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view"},"Cell":{"tagNameMap":"view"}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-view":"^1.0.1-beta.3","prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0-beta.0","rax-scrollview":"^1.0.0-beta.0","universal-env":"^0.6.6"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-text":"^1.0.0-beta.0","@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","driver-universal":"^1.0.0-beta.2","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","eslint":"^5.16.0","driver-dom":"^1.0.0","driver-weex":"^1.0.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-scripts":"1.2.1","rax-test-renderer":"^1.0.0"},"readme":"# rax-recyclerview [![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n","readmeFilename":"README.md","gitHead":"7200ac34dc9f57021f59463dbd991cf3373ea092","_id":"rax-recyclerview@1.0.0-beta.1","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-O9R3Tz9HL38RrV+VM+ENutkxHyUIbSEDaSXD6/q75KjAYAvpxMo+ajzgA5HhhIH8940w1HDBXdK/hOYIMsfcQg==","shasum":"b50365d7039ea6c67d7c55fe9b0ed5631c149847","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.0.0-beta.1.tgz","fileCount":13,"unpackedSize":12189,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdC2lUCRA9TVsSAnZWagAAEx4QAI4lQyvqf0Z9VAB5/t4+\ncy2JUgmi2r4vSmhOoufmkt+xmPEZptDeCMRu3F0QjALHGryQw4WsxE7pMl6m\n8zgJZ+f6r7bi0k8XYnOaO5PNQu+RW+XAYGzPMPJqWR2PLgp6K46tGsYq29qL\nevUhroby7ub+pro9aWedZ40Oq/GznqjfDbh9uljqDDGxrAv8BvM8bexWMVeu\nYHp4mFK8B8S5F3FCY8M1E5Ip6C6wuwLGsFy1wrkftDgBY4rg0hQ+9kQrtciX\nuukjY28bKpHytDRreResMTNRH2UU60wX+I1szqe+az3IkAHALBLuZIUFmr3p\n8NIsqrUsBFBUEf2GlXJ3RGqo7UBzMMF92B6sj4IxdKhSDC/6krPr3oGp2CEN\n6CvU4cIWE+kOjKCmrx90joXpJfv3IDfZT0lY6xP0U/2gRt0Xf1+iSh1rpiJY\nk//kXrv8oEiTMs7QNW8pKNBzdXUvwy9FFMwia4Mh82clteRb/IBn5usrPbmb\nYjpbuCy6bBF3I9lBccvnJWX3aWixnDLq42NWSEbWhBmphekM0esNgEZNpCyd\nQWD/OkcWwrzbkfyx/2gUS1B1Uph7u64adRGpsIraw2s+hjIxexdMcYOE6qmx\nDdEt+d3e9+ZujQVXh0KwQPiTn06q1HbXMKF2IUMkLvk/JTslPT4grXCBKbO8\nmvHA\r\n=V8pu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCr+LtHIJi68Cx5O91EwkackfuJlWYHywl8YD/ssqwnZgIhAL4WjazSKir6yoR8i2kYae2BTHRji2plaY3XQ8GJ8Crb"}]},"maintainers":[{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"liangzhi.llz","email":"liangzhi.llz@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.0.0-beta.1_1561028947319_0.05035490048167568"},"_hasShrinkwrap":false},"1.0.0-beta.2":{"name":"rax-recyclerview","version":"1.0.0-beta.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-view":"^1.0.1-beta.3","prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0-beta.0","rax-scrollview":"^1.0.0-beta.0","universal-env":"^0.6.6"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-text":"^1.0.0-beta.0","@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","driver-universal":"^1.0.0-beta.2","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","eslint":"^5.16.0","driver-dom":"^1.0.0","driver-weex":"^1.0.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-scripts":"1.2.1","rax-test-renderer":"^1.0.0"},"readme":"# rax-recyclerview [![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n","readmeFilename":"README.md","gitHead":"3bcb91de0fe6be424551c30537d1341d417dce66","_id":"rax-recyclerview@1.0.0-beta.2","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-+nvPGbusbnjiRESwhBF0pWDQkh7iXIuj4WgaIsE3LY5OwKg8UyByPyegZeuQX66dAn6nTyx5No2KYof6kbNpWQ==","shasum":"2051dfe0ec029d92543c6fc6cda8666583a277db","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.0.0-beta.2.tgz","fileCount":13,"unpackedSize":12531,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdMB1ZCRA9TVsSAnZWagAA3p0QAIzoF7OZhP4BQSM4UTVY\nSv35GfiJAnlt5YsZYZBbdzufD5wXl843IQtD2dqcwLGXIf/IZhrILAg48mss\nyhIVSFXTePbtOW976BVETiTtnnmW0i+xoRIAPBKcrl6J3fIWE+2W3WLok458\nGaT/HE9/WzRBwNi6Cj5txB5+520DnJk9PwIjp891KEK6MNcfE/3mM+xNEVNE\nNtS5dFN9FU4Aoxmb3OHJvV13xslWLdjqrXQhctHvmO3oFKHc+iRRDBNYgwm9\nOmQuHRC4L7GJj8jIdANTaIK9WVlsKdn4o7Ru/8rONG0vaNwe3PH+lYBWe9TJ\nI8wFKIC820+IYQlEUlaLeqEIQ9bL+cqowkhUgfaK/otgBn4voGqxC/QmLvyJ\nNZqxOq1KJFu6U0GyxbBS0PvxoHtX4RPKUzxl9IwOoX64R0ALTR7KVsOkCs2K\n4wxAH2ixFN15dSbS6V2YTGwheac9dhZ44lj7FhTq6Q+oN4pI7B+eWpLzNagf\nCzhdhEa4kPKHXNPgeoAsh6uFDgMf+AiDwpT+2iWJXEAnF3i511Tr3dOF7Fxp\n1VvBtfBCTWnveIas0z2M62Fatdlw4S5p0SJENMwBuVdSp1JD3Pl6MQP7s9y5\ncsaxOX/K3Qt3Xx3x/cMidtW7pHP+u/wHsCZQE/bzfp8euf/1MIjpS+bQz4v8\nygDM\r\n=sdz+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4R2xwWz5tsAOemZcCDTgQj4o716w5BBzMxed4KHEPXwIgRoajUIxLwLHMUbwJU/kqHMwKV94s3vfDs7N0aG8e+60="}]},"maintainers":[{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"liangzhi.llz","email":"liangzhi.llz@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.0.0-beta.2_1563434328818_0.2568995675819872"},"_hasShrinkwrap":false},"1.0.0":{"name":"rax-recyclerview","version":"1.0.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-view":"^1.0.1","prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-text":"^1.0.0","@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","driver-universal":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","eslint":"^5.16.0","driver-dom":"^1.0.0","driver-weex":"^1.0.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-scripts":"1.2.1","rax-test-renderer":"^1.0.0"},"gitHead":"a6dbf43bc5d8193e469e4a1db0945b48e6f82c4f","_id":"rax-recyclerview@1.0.0","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-6yYM1ZHdIRDRKra/ea768Zjo/tYI//zrJwNJaH0dBPSVF9YTuYhyC00khomMYe93qX5ucxy2nZj5sbcR7qbHTA==","shasum":"9a287cc749486305bf11ec2dd780320fad87f2a2","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.0.0.tgz","fileCount":13,"unpackedSize":18494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdPsPhCRA9TVsSAnZWagAA/3kQAJhZIpUw+B5JfOCdj5Do\ngPMAFSKjeVhRlPmT/s+yjaH4IfkKU0XP2UV1jE53mWkzBXd0KTFE1RUKdqYz\ng+Gll50jsS1bL93Zry3IyEmgNYUKIXkDpF4rFIxTT7Gj2moeSIA8kp/qAdUb\nB8YaVLRAw+r/kHyO9F7eiHSjC8lK9eCrZEW9bemRBuaUCgbGXLrnW8naWUGX\nJ1Wl1yatqUGc3enu7UIKY6nIDl/Mr2tL6yjZVT+oLVoMjcqt93xwZzQ/4h8s\nQB/ZtfLS+GJb06AUphjIIM2t+TLHAy9X5HOrK+lPcYku2Ga1NoDRdGzVXcDB\ne545p4jDKp+wP8V670eQ4WsOfNjX+37lqJiTScBjdIM6SGd99ngp828CG/cI\nsOpzyttwciJUqNTb1lc6xoCLoQWyUOm0+/gnOCyQvUUIBFOScQQCtxYGlKpZ\ngN4qWH/xgmG9mggCf5n4ngBcLaaJzPOz7GquM5fLkiGHBbJBK7yJo0gZ3Oz7\nnMeuV+aNU+GRFeH2E68CsYcpAbPOK+b0a6YNXbWmUl42Et67NeGYj0TKJLHk\nn3cCmSrrnVlzcsdjB+4Zde8uxi4tTe2GW7FAYPaKSOBA0sNP6J50qPagBYgl\nFPccygehU+qSv08VB1aw+j3dM/0sZLrefTA0R4T2DQ99quQOe3mmaPoMnPHO\nNqb/\r\n=qxIN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOBJnn2ZTMPvHlr0NibOc6DB/oMsYifw5MT45mbm68wwIhAO+V+SEaN7N4uMLt/zCkyHDwD/kiZmbgVq+uR2MqgTRk"}]},"maintainers":[{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"liangzhi.llz","email":"liangzhi.llz@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.0.0_1564394464586_0.9053775959705779"},"_hasShrinkwrap":false},"1.1.0-beta.1":{"name":"rax-recyclerview","version":"1.1.0-beta.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-view":"^1.0.1","prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","jsonp":"^0.2.1","rax":"^1.0.0","rax-picture":"^1.0.1","rax-scripts":"1.2.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"d54ee20ad62a4d537b52f9a8bd0a9309761cec74","_id":"rax-recyclerview@1.1.0-beta.1","_nodeVersion":"8.9.4","_npmVersion":"6.10.1","dist":{"integrity":"sha512-JbAQOFdBUWsSDpOCmFUBtdwojbOHPk7O9JVRoEEiqfZDcjCLpSyzxDrKeQbtwVZKypuKv2w5vm5EFKFyGY+2PA==","shasum":"4e3df65186826f2574f3de47e34f420dc247224a","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-beta.1.tgz","fileCount":17,"unpackedSize":49789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTOl2CRA9TVsSAnZWagAAhVQP/jJDxS7FFgKfImRFQad3\nRu2lNvQx0wJZfiFFjZdSAIOqapDeLuI7CqU+K4hclVy02/mciFWhDZWT2QgT\njp4CZCZcyvxpPlcEGbzr5ldH2Aqe8qEwJE4hKspcN/JKHZQnXacW6AtGcbbN\nxo6/sHLmkQ0v73xScuQWO3WRviGwJdED/LBEQXPBRxdu6u4wnlQDtOGHno/y\n4jvTAkU6tmxqDmmziqIl1wNsLKU90uwjB6bWa1wsUjj1NILLkEfQpr+Klkmj\n5fO18R4DJevp5vvP88xTgQ0r9r7IPP77idilkmQmmqZgLKM5KxFkAy7V3o7c\nh9l+64LZ9r+q/hs2j94okj/L+GMylutmyf9rLo9DDDzCs2bwOt7A3OoGAJio\nw5ImovKHOdrWyfEbCDiJyIpkPVUPLlmQ7smstszt9RopbTbr4slhD5BUDLNw\nZbGsxE5cuCNV9id3olWlpJ7KgJMZmDnW6LTLOTSNYBm16YZNrxxbH15ooDgj\nVp2fLSfQTWQ86WDo8kQERN1MXLfpd4Gz2WOjOjlzEjhKtS0sbo4/jgLJmhgC\nrMgcXQpSqbKnO2vxl93acgUmAwIDkREzA2A8/Y0yvmZDt1rahPuhj3+uJAzp\n7KPTHSoIoYaeW3yt6BDIO0hxWSHjLc0mhjcWfIl1DxAqT9okWDqKzPMXdvWK\nsoSJ\r\n=58Mv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClqNjWZfggp8xrtae56TNRIrZ7LyDU18W2K1RPXpCWawIhAJ4XIqj0eCbRTzI/Yph34/BidcYU/4EajUgJaXJe2PyA"}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"boiawang","email":"zhengwang2314@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-beta.1_1565321589565_0.28128757747357014"},"_hasShrinkwrap":false},"1.1.0-beta.2":{"name":"rax-recyclerview","version":"1.1.0-beta.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.4","rax-view":"^1.0.1","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-scripts":"^1.2.1","rax-slider":"^1.0.3","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^0.6.5"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"0e3867543902bc31158076146db87f3ec2c625f0","_id":"rax-recyclerview@1.1.0-beta.2","_nodeVersion":"8.9.4","_npmVersion":"6.10.1","dist":{"integrity":"sha512-nzRNTWhlXHmb3pIRPJkwDh8CN0jFxnyvplTGcide0p8FTWJ4yghwLAwolrdYyu15Z/7AUPnK1ltHp6QTbOdLcA==","shasum":"3fa49b62ac64600ec23c5da99dedf8488cc169d8","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-beta.2.tgz","fileCount":20,"unpackedSize":56640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdUSlNCRA9TVsSAnZWagAAvDkP/iLHWocBCbDVkYP02ViO\nvKS2EByu/23TiPp79EZcsULiqjtAngdkFCUbZ1yeGzB/NPQjh4hUd0+Z7OdT\nUSSYlQsmd3hR4OBNdttCYq+4uqIZ7RfWXl325bajRt7mlGwebOgGGft11VVE\nvQafqCm+TlWNdsHF6dl75YMegZKkClRZXlKjbcvmsI4Du61Y6pnQqmJCCSFS\ncKm8W8aQJgJuxpkXTauI2o+bljppGDG0zLSN3eWehmGkXolVW/R0IU0hVCcW\ncita6stmy0DHg8shnjgSV5xXgfq6OTJUV7yaRo3a2lhy8AL8iPm4MMtGsWqH\n3MX0uL48+UfLKuFjgbdr9LEGCseEMYeUq/rU9DHkGve6rXHSN1cx49ICbMq7\n8vaeNZe/vZKPHm1jwUzo+hjOF4A8+w7cENBPD9SaEYpF2/Hjfbamd7xaDAl5\nIYy44TS6hidS2Gyg2ST40tXmyUVF7SQ4iylvyuNImFCliFt2ZYFAw9cr6dTJ\nNmQg8Tu8W+r+qXE1nZdZ9j+n05nQnupIfto5PNku7KCm+VsxtEXf+sidkdxG\nAwh6rKhOWUKO6YXpDxfUMlCOwITgtbLNqPsp4bJuBBMFZY1Ny/gknGYlOkzu\n1QTMJ2NITz242NblKZQVOffPauUaPU7t1TAercADIl3km6cctVVH2zTwRNj1\nemLM\r\n=QLIp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDjYgExm7dwqcAQh3CVUaML6/ueqe0fSNYPfSyVqcdMqAiAezomJPTo1re2qLu+9ovp5MDspZyOjXjSlrIihrIK+gA=="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"boiawang","email":"zhengwang2314@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-beta.2_1565600077113_0.24263968677829095"},"_hasShrinkwrap":false},"1.0.1":{"name":"rax-recyclerview","version":"1.0.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-view":"^1.0.1","prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-text":"^1.0.0","@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","driver-universal":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","eslint":"^5.16.0","driver-dom":"^1.0.0","driver-weex":"^1.0.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-scripts":"1.2.1","rax-test-renderer":"^1.0.0"},"gitHead":"dc4b60497e9e175b64e56cd1071e4ee010bb50b0","_id":"rax-recyclerview@1.0.1","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-fZF3AKt0OF/hcwD4NnvV6Tjs+mI5oTzJ3QlNu/fKvA9hH7+PufiAGXD43SMeh70ywR+/alxZ0y/Lm6pCo6mUWA==","shasum":"4e7f8ccb89fd5c6939e8f7bba60cd035c14a572e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.0.1.tgz","fileCount":12,"unpackedSize":16389,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdY7ooCRA9TVsSAnZWagAAYR0P/j2HtYczGyogAa35q1tZ\n1oWOH6kW8J4Epxn3kmGDje9gtKooeKOM8UkIPnxKG6s4YDLlMi8yVs3z7t5P\nh9RtUX0hhQaCzdoW2DQso/ScsteOpE7JnFxkOhYIywk4ThWezUp9lOlUdss7\nTUEpqTuRJPGtUJ7SFcDroNJeFWIzEZ90UYiO4jLh7oyiTfXpyWmEmkxt6oZd\nOaZo+tISNGMdx3Se0Mbn0UMKW5Ikcrx0YUDuzl0FnZsAacvOH9Y41x5X+ja7\nVHg25UeW127ZyDWLKCxZCCIaZ3YiS9jramw3Kd0qy6S+t3hFXMonHxVO8v/4\nHq44VHC2POYUArVzN7hh3p/4L1HB6jLhEwReJP/A4/samHQVmSQjakJi+78C\nzwgaq1XzBS9GjGBxrtFwS7Box9ck6oTul5Y9Hcyv2VgBFkIcUFnil+bW01P7\nG551Figb6VQwDrPGK3rP3zmUN/dHlJ5g852Kz+Zpy+eey2Zv9sBPM8wYv/14\njZAzJwe1Zb8byK5gQnl3aUU+5zygycfwPk2DXCH5/R0FA9wkaFWs48THQc6H\nDIGT5yBbfP9x25bcbFGTmo6PCJTweG/dJXuVvJW8lddGZs8UcUIXLqTvJU4q\nFDzYUUcqLniKUcvOHKYA1bJvHOV0Nb1v1Zmf7x2aV1Oaggb9LtTx+312ERjd\nq/dA\r\n=Kdkg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMaCWGRL4ZyrwueHMdZZ3XYRt/gbhJzqpLORMqMjP0rwIhANJsWilXQb3KiJK7Sdi050btXwwy+SOkVKnr5Mg5mmSR"}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"liangzhi.llz","email":"liangzhi.llz@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.0.1_1566816807465_0.7621406883740898"},"_hasShrinkwrap":false},"1.0.2":{"name":"rax-recyclerview","version":"1.0.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json","build":"npm run clean && rax-scripts build --type 'component'","start":"rax-scripts start --type 'component' -p 8000","miniapp":"rax-scripts start --type 'component-miniapp'","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-view":"^1.0.1","prop-types":"^15.7.2","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-text":"^1.0.0","@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","driver-universal":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","eslint":"^5.16.0","driver-dom":"^1.0.0","driver-weex":"^1.0.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-scripts":"1.2.1","rax-test-renderer":"^1.0.0"},"gitHead":"2faab07e8a4fb42f244ea0ae4bfb3c6a02559104","_id":"rax-recyclerview@1.0.2","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-9IKaZ4j2r41GBGfERkDowUDtk/2VJ26y0pvYmD/gO4gBhCn0vBuZymtQFi9D+xuU+1EB6mOReABRXZdL5i7YsA==","shasum":"c808ab5c521fd71dc6ae5ed36a0d13f8e5c532cb","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.0.2.tgz","fileCount":12,"unpackedSize":16416,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdaQd+CRA9TVsSAnZWagAAm6MP/R+SlJbqDLgiOnaDui3E\nzUCr+7y3wMONrkvIv+osi8UWW4nRGY2SpYxbKF6aFjW+35BxpfOanQ0+PlE6\nvWbrWKN7GaueurZFxGppNrMgyS/P7qcZxs0YrAn4bz/Rxof1V5boYERhQ6oM\nEfRy0Mle9Ff8etA5zfAj83W2nt3LWDWfK061xplmL1sWms1qiI4MEd9ElKt/\nhHsGa5zYl558Us7JvH7jyEQPJTYPNEoKspX+p+q3+988GziFl5wV0zSu447g\n2duQrYQ3SyWcycQ/sWOZT2IAxX/9AMg3uU7kF1AOttZ0c9375PQlF/zjjNKj\nXNrcP2yY79KgxHoMXmQHHNa6vcsHg9z9MnVDCJHP8AOEuJr/pKSBefbAg0c+\n7/F0nqavXQiDlaanSIjqP8GrAoLn4VEvuUHdjcc7tseSod/LTAqeUs6nFpU+\nhdIcdA89AU2qgAp/tFDnpn6fwUDYmGKQzZaFsj5aCSkKpjT4rUda+bj/B3xK\nu34pbaU+F6i4DwKjMM/mJNvrq8nWQsn9hiWPMzWXYBqJ1hGK2QTC7ZcF60oG\n/9B26eliI0cnHJMIr57bWMNcOT7jQqX72Q07DrXFzx9OSbtVHX6cJTSv2KL6\npxgMV/eK5NkjEjd5dSPbAu9Hws2jM+JUCkjMDrTIz7KLbPAU95+eUlboLIPr\nv94/\r\n=1PDi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHO78kVUT/X+iGrd8dtrclLJMqX0EDoGJk/4mTNb0KQLAiEAvip/xoHsj2pgm8FA4Iic3T8N7sv31+RoGRr41WOnXmU="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"liangzhi.llz","email":"liangzhi.llz@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.0.2_1567164286028_0.6297600285994411"},"_hasShrinkwrap":false},"1.1.0-0":{"name":"rax-recyclerview","version":"1.1.0-0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib ./package-lock.json ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.0-4","rax-view":"^1.1.0-0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.5","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-plugin-component":"^0.1.9","rax-scripts":"^2.0.0","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","typescript":"^3.5.3"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\n$ npm install rax-recyclerview --save\n```\n\n## 引用\n\n```jsx\nimport RecyclerView from \"rax-recyclerview\";\n```\n\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表 h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表 weex <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n| **属性**              | **类型**   | **默认值** | **必填** | **描述**                                        | **支持**                                                                                                                                                                                                                                                                                                                                                               |\n| --------------------- | ---------- | ---------- | -------- | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| onEndReachedThreshold | `number`   | 500        | false    | 设置加载更多的偏移                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onEndReached          | `function` | -          | false    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onScroll              | `function` | -          | false    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| autoWrapCell              | `boolean` | -          | false    | 自动用Cell包裹子组件    | <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n\n## 方法\n\n### resetScroll()\n\n### scrollTo({x:number,y:number})\n\n#### 参数\n\n参数为 object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述** |\n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x | `number` | - | 否 | \b 横向的偏移量 |\n| y | `number` | - | 否 | 纵向的偏移量 |\n\n## 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\nimport View from \"rax-view\";\nimport Text from \"rax-text\";\nimport DU from \"driver-universal\";\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>\n            </RecyclerView.Header>\n\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n  box: {\n    width: 64,\n    height: 64\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DU });\n```\n","readmeFilename":"README.md","gitHead":"681e8fbac7269f3f907e23ad7bb775a8e753c411","_id":"rax-recyclerview@1.1.0-0","_nodeVersion":"10.16.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-PpJJbKTgUhZzwYpBs4M/WE5ce2zcPFV3VIsoNXjGzAm0KazEfusu24A7lH7+GuWfLf341XTe81bpHwXRv1T7QA==","shasum":"1104961ab8e893b331c4099c0ef73fd2a5d2deb5","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-0.tgz","fileCount":17,"unpackedSize":19467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdd2TACRA9TVsSAnZWagAAI0oP/2f5DEYHlqVUTcpj9lR+\nP9qLU8oB48rI/saeNJgI3HNLrdcDzfpLCEBGhiYVZn5vDK+5+89JJB3CaeIi\n62itqQfN9sHnod7Y2A0eE3dznFL/ZbdEI8wyD7aGthJaqKdhz3qB5ytU3pDo\nqaMaBb8QDOp26FaRdnsLsX7LLbAWiUCxE9iEQZ4Q7PJkDV2zuvT6J7EMPHOp\nu+mLw+g/5xzK+w18Ta50u8/HAj3UkYM8s6N1SfwJ1DaCpesJaQn5m8YYP5MD\nVEtCAoNRJjyvbOKiQBSiJDZOTV89nFaA+uJrixjjY/c/fpImQgOLaZhGKr8/\n4R0iPVrbF59MHPwXTk8BhlsDMMddOyaobuHiqAUeE/Ds6o3VUHtPuSEwTalW\nIuHOYhT1Ojtt97MWAjn+o7I8el5GYtXjD5gn9jRhJxCq1mnFyfVijt4c5hjO\nvOlw0BsViFHIahK2aH3tyDZbA+SBWcGNlNaQiSjFGQWzqdb/oocNTcP0hHy+\nOAz1FMyQeJXnwXlHBNDXJia12E8uAitQNHRIwOz598XdWSMrNUwQyLEbilK6\nGhvCQYwZT1istJkXGOBaAjpkNI7G/Oa72i+ozf8n6J4iVCr2gHgOzTXixHfU\nl99eOdi+4XAA1n3+dOSlifpx9YZEPmglUVRywytD13CCcaMRZQg6c5RXH8er\nJDmp\r\n=lfO4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICYjzAdNPl2SA4wJ2anAn3sU2uL+UzGzW5M7pMoFkzswAiEAp11o5bk5f3qB4USjsuLNPF2jz0sN8pZw/iaa9WkjIzE="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-0_1568105664098_0.4015704485114904"},"_hasShrinkwrap":false},"1.1.0-1":{"name":"rax-recyclerview","version":"1.1.0-1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.0-4","rax-view":"^1.1.0-0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"^2.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"1f281f6ef0bd13c141a7479509e3a3f1be0359ed","_id":"rax-recyclerview@1.1.0-1","_nodeVersion":"10.16.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-VpaT8tDvFqSQkO11cAlLMS1DFMGWaRg8fR+80oOXdDJ508N8TYa7WIxng+P3XCKHlJ5aD/q+QMHoKh02m0T7qQ==","shasum":"a158ca9d3571c7d108a881fbfc65b5e4b9d3effa","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-1.tgz","fileCount":17,"unpackedSize":54284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdebj6CRA9TVsSAnZWagAAAqsP/iU3kX1wVaO7XxxG0H3U\ntvgw+AmAO1LyBvR969aHupQd5FKYxVYdm0KMtCyj7kmbhhLVSYPaWaaGtjwV\nkatKuPnLbkEKuOGQ7xpxxksJbmFOL/s1nIQvOMriSh+Jv4rZ4WDet59WN35B\njiRg5s3SKr/hPCQV3MGekQnIEsKYh9KZQZaDYM1XasFNrP24dvOIev9VPgvb\n9PGyfbOljzEVeB34zbdo5lyuDlG/rYJPUsU90rDE7u1hU+C4g+Ve5l0lhYqU\nG00c2MS78jSBj28evyI6mcaS05L4hwGrtMqvV0z+nC7isC1f4cL2EHKuZVAJ\nr/W9lBj4lHuWvQ5LpgzxtClUpBB9dpdsNXuueUItQEH4wFR5TAdlwWEl4Vkx\nLHucrFdep2FaNkOMoYl2KqnqjHzVEossFz7Ld7TSv8Ry0VzWLF9C5rel6O9/\nDQsR5+YLF2LtHmNC5L6H2lMT1EibmGqjyScaqdxmMDOQi7MWfN0VcFvclDS1\nhPzFWi5eY67AgDST87jhCxqdKTlwpRky6JvxFlAY85O+GNea3AyYe8TTjQRy\nfxVZF8XLohJnHFtvr+uAVpBI7/QKEtjd4syQ9b0Q1B8pKsSXKVGXqOvryoFP\n9U7TytHtm4uWIMjQ9KiCFLDuwDj72g8ABDDl7siRc1TN2COndfPvIssBsZV4\n/E8o\r\n=1Vov\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnkHPgqz8AcxWYx8CKSL2Bp+yY8hpFL+9O8B8KIJdPVAIgEfv3XlS7bGmQi2ZdP/m7lzd228/DKsPdi0aH8Bpwa+0="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-1_1568258297701_0.978822644216528"},"_hasShrinkwrap":false},"1.1.0-2":{"name":"rax-recyclerview","version":"1.1.0-2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.0-4","rax-view":"^1.1.0-0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"^2.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"52999b46e0b7cdc48867faed9b20650a6d2130c9","_id":"rax-recyclerview@1.1.0-2","_nodeVersion":"10.16.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-g3M/XYBWP7ApdpQzcK5+leHLXYDPCJ2BI7yHE1jvv3KBg0OU8EeglEfBUcwZiKRlfDVsl+rd7cAZyIFc3m9p5g==","shasum":"bd741487ab349adfbd4b5e91b0c8b9cfb6beb59e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-2.tgz","fileCount":17,"unpackedSize":54348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeh+ECRA9TVsSAnZWagAA6WIP/2UO3cCGBKlQu4ZsUPBi\nHGQ472PzXByi3m/GwRVbL7kP3TdqxABHwoBGFyV5RCxH9fkFH/8X6auDoj/n\nTfk7l01ec/gTKin38p8iXGu+aBE20GmVUlxRMQQEcddrAfsOt/pJCH7kPcQ8\nyG7A1gBV4mqNehzfCAkloCEk2x7MTDN7Hf8Tb2PMaG8P1MWeUv6Rtqb/G9Kp\njVeAFS47T+NUWYi9DtaHv+DSwj7D1+twMMUT1aq2pcJ0I3XtmzcEPMYgqRnd\no9mVFu/ObfVn58CFC2wgirtQyORnmzksscqHqgjMxVeAEZVOBPLyYpSerhik\nFF0eXvhR+UGK5x9akZoCNfMOU4XXPrFFSO9aYAYhEjs2xavoYGQLv758TN5n\n3qkXS1xghpuOqQkoiglCkvwCqS7dWpUb7Q3k1iXwgH2iVSJAQuTaBwuqA9Xx\ngtBsAq8A41BFZ3Ei6qdGk3RTwz+ws/vYmJJPVDn0cKjr4ezos6v0LCBSvTLs\nd4qLeQQpQ9em+//ihXW0GGHs6JXl59F4AVSiu28Plzj3+UHOgsim6TVvbZc/\nE6ZGQRku5m8SU/T7bfL/qd1f0l46mLwxbNwcLG3u5onnO4ldd1UjDfZPX6VD\nlSbKg6KM5En5H0rnfye+2VBIQHgQ+4NLo51oz+U402LOGJEBABuMZz6UFl21\nXGzj\r\n=bpnQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0NLTbxqcvdmKgaFX4rUoV4qu9h2UgTYuJTo4SPaDlMwIhAKyqj686xne1h3QoroqnfLT2xy4ekSO+qgeJG8MWgSlJ"}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-2_1568284547666_0.48740503542997415"},"_hasShrinkwrap":false},"1.1.0-3":{"name":"rax-recyclerview","version":"1.1.0-3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.0-4","rax-view":"^1.1.0-0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"^2.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"52999b46e0b7cdc48867faed9b20650a6d2130c9","_id":"rax-recyclerview@1.1.0-3","_nodeVersion":"10.16.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-1DA7YLOvqEBFPuJj905dNJY4nf9KaeZCnlcDGGD2H8faJNj7OTFGDvPJCkDUnIju7+Y7Udg/fMad1pDNBuFe7g==","shasum":"467f907ddf1612acef1416cabcfc083f9d668807","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-3.tgz","fileCount":17,"unpackedSize":54370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeiDdCRA9TVsSAnZWagAAH6AP/1VEYIwe3ctqt4zB1cLm\njkEm0jywfhqVjt2r1vwmJaiN88usLwIgk32eqhLPR3fF44ytPEuLmjXeC4ni\nGI8YSOa8IERghe2xm/zDa6xgeKJGMFtgqPnKS7trTXyMH0RaJ6mvKExotPgn\nWI3b0qc097A9uHX3bvU2DNMYBLEwtbk75qGo8ctfzfSSMKoQjoQeutlWwQLU\n97flbsDAC3wK07GsUJmohRBRMGHYhmirWaw0ib2qACE538VRtD2+up95EQ4W\ny96Xyb/BIjYlIRO3ruFt0uWvwKloAxeCFO1SO3eF8HnX9SOHFbbjA5H5xyF3\nfaQQRYwp/4Xa5SYGFjkAmdXyx6wAzOBOMOxZnI3p91uiaoVdgRolzhAFoX1e\nZIIz3xXkIFKxiw5j9BjaWcisEja/LHBbAwcX/OVNFK3YdRN2Kr0dqdOpN7t7\neaPq2xTWfOMl/QAMJeuEen9yYHfDriOGHr43ZqCC1KF4JtgVrO7nEiQi78LB\ngJsE7EQ1qIi4TcvBCI9gNRdWiyEb5C8jPD5aycssd09G6qkXwUYTH5gWrs4C\nQW4aJuw+yKDvVZoB1fvgm3glymCFuUaGjgV6LxCzlJ6BC19f+QfCOBA6+mzD\nQ2yIol6VcvN4s4B3i/cCT+eDWEhu/nJYsN7/eadgC7JCbyvR2pyGgt5ImKuE\n6jCn\r\n=4dxr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIApQ1QSt+rFn85A0fmHGwfoINZohAlnnA5LrecVIm/JPAiAWhvHNNSsIkmZKSen9kjPGUffFUFb01NG0NGTvzeCVHA=="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-3_1568284893082_0.3636225695836115"},"_hasShrinkwrap":false},"1.1.0-4":{"name":"rax-recyclerview","version":"1.1.0-4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.0-7","rax-view":"^1.1.0-0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"^2.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"5af0ea64c2ecdd3c961a0e79d287ecf00836df79","_id":"rax-recyclerview@1.1.0-4","_nodeVersion":"10.16.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-xhsJKNsR7lY3hMMkBMVP3QjMvobkE5JGRqUbAGAisraDP7IN8WHVoE5IQJc4XR1nPG1JGbl9krOB/7Ag44zdoQ==","shasum":"9ded9e676f06fc82e71c23f85f6a23c5d96ac5c9","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-4.tgz","fileCount":17,"unpackedSize":54461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJde2kqCRA9TVsSAnZWagAAjCYP/03y7AgRmr0aJ9NgOVUX\nzauWryC5/4JvvPwv2hV5bv7HzBwwn07uTAb+glxUMW1OVx3bp+5qKfS2fEct\nUdqIeh2RDI/024M6tRW6oi+WmP8uOvOZWR9Lepp3IpUKpWv8J/UKO1leJu7I\nFuJniFwT+jXn6FftNEP0vhXPCrRoIGDNwUyGkG1vu1HJX/xJ/oOe2+JcuOgt\nZ9KrGsYlDKT2xDZ3hPpaEdy1lWXCJTUMSlSkxmirhZZxc5Lv1nXzOh/Wrc8o\nVQxBJtoTKj2HkPvvlkLi67mzHhwaQQVkFY/9WJ2IJdwBHjlPSnZI1RZGXWC1\nbipOWxVyAVWsOTdz2I+VkIDJDF02k5AbQ2sXX3TrjSdwplHytkBYsVVHFssJ\nqHHc19Gw5mbRrmgrJm+slNpURIDliGs0kFyDv+TbnOW8TRFbWBoRdLuKhHEv\nlA9PPJyGrrrTj3CtcLt6m6BObyZrSJpycrL0dlzvs36Cd0IgY0JOcdN7Mejq\nSK2NFhziT9B/9OHPwBGcOk2G2xj83lW0xxUeaVH0zr//X94WdP4dTgttlqpA\ncKgh+StmHd3AGX5Pmlu47Hz6O7vsu8tnV6uapDtjbH3PN7EEsTbuq5G/xsQM\niAkScembh+Gy0TRdQzGVYG+5w+kd/Uz21/n6lNwYfnJrx26TZUGlcvYZKUl6\n1oc5\r\n=f/q+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICk/vz6aClJYPtP1r6jO05IU9oe0oS6CO2NnIRYD9BI1AiAfD68jzal+4RLxEDUqIx52zYDzhpzuj0QNkxUCMEuJDQ=="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-4_1568368937167_0.46146645519241547"},"_hasShrinkwrap":false},"1.1.0-5":{"name":"rax-recyclerview","version":"1.1.0-5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.0-7","rax-view":"^1.1.0-0","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","gitHead":"a22a2a3198c4be391931a5fba2849cafc06c3285","_id":"rax-recyclerview@1.1.0-5","_nodeVersion":"10.16.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-o9r8k1rAaWGVoEXzM1Sdg7gc0DSZm05CPYJQtAZZAysSyccYnW+uoecOwKBwuW60yLoI+dsskTxWd4dgReDgRw==","shasum":"065f5e7548c6504d7f4613e565d78101605dcab3","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.0-5.tgz","fileCount":17,"unpackedSize":54780,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdf6+DCRA9TVsSAnZWagAAUIIP/3aL+DgybdpymCpIqPV+\naepKkfVuhM+3Rn5PHkqLgbl43NK1vxLF7BYcqBR2S3uEsY4zVZITxzKrGzC9\ngN2VEP+YmULa7r6qpBcTJWfViJ/ug8GrjVytTKhGMjpVfR8rwg19tDSnAWFe\nQ0LGAtpUqftCSrYaCLr2ayrVB1f0v7cksg42X1J4V01RSMN7Z9SA36pr3w6P\ntfM1cPHx9n+dUoUuCGNjrBX7fPMWAzJhiYyCv4FZhITRLHtIQi/7VNDT3zz2\ntMbbRGueWxw9gOXt8vV88A+FhZFZws3E1XU3HJ8gONQbIK0naPXWmkUcavoK\nmPeViQEWjp3ab32ox+VlkTUKa0oekJ/pJZ5nNiJ4uetJaJvPr1vdU7K+VODG\n15T5x82AV9mpe5h3HeyIy3dZj4My6d+LqNt8FWZzZbSuu6H0dK/8X3KFDccG\n8a6YuCW0Rw7OgoJix/ClFzBqBxLSQtqrfzkxIZeEEZxXg7uIdlxYO7cMVFpM\n8i32mQNFw2U6Q5Tl8HvPytfMqlG7zLVQ/ewOW9HtDM2n5arUtkPX9bdWj4Nq\n43g7ojZnOTv+rWJlB/0hIoYM6b7zqyPzrODI9iyn/9mhL5l0nCffndNyHhab\nsl9uuE6/GqV7KocqkGTJb1HpKswveNkmBftIE1zKrPGlBPwYvO51wS58HAk2\n3KBX\r\n=mInO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxWgMpWFgHhCtUDE1H/L1wQ+F2J7tJxkOAlSvQH99E3wIgGHGFwemmHuZE3tpvgZ/EV1MGATFg2vk9YyrRM/CM4NY="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.0-5_1568649090349_0.3239789863068694"},"_hasShrinkwrap":false},"1.1.1":{"name":"rax-recyclerview","version":"1.1.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-recyclerview.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"1.0.4","rax-view":"1.0.2","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"gitHead":"746576d3a2c78b1aa1a6ba863412a023b6751a2e","_id":"rax-recyclerview@1.1.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.0","_npmUser":{"name":"yacheng","email":"narutosun2@163.com"},"dist":{"integrity":"sha512-KbUgnswN4IHwRiJcSCulfoHkExY7SH50r6o0TQgqNTlGsGsiNfDaOJT2X/FH0uxn5I1UjO9m8RqF9pVWA+BUqg==","shasum":"f4d73a8f345bf1bc4874881541ea2103813cd2f0","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.1.tgz","fileCount":17,"unpackedSize":54649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdjLHvCRA9TVsSAnZWagAAxREQAJZ6GpYtQA2C9zb2gcj8\nsqn8xHTB7jKlNkH9Io0FfVRis6YXrU7NJjvYHywtPg/lx5Yp85vm25LWTjML\n75xgDS+zuqzuns/zqKFJ9W3P5pqtZil86atpExLHEop8tdHyRABrTporu3m5\nkjnqdnTWhtjWaSSK+woR1YEmFurERvFckaP1a3a5ukRDLESQe78P4l20UEZr\nETMRVpEZXbILM+aQ1u0z9rs//XEgLDb39FtUVdgElnvvEwHNO8M77YnmoYMP\naCqJen3T2SInUvQtnPoTYOw1yzytn8seF58RAdsZ/jFcPWXzCXPTOKQFHIlJ\nPZ9B9i/eyXG8x6CD1cUzy5voEkwitklgpeNQ0btlQ64JaqoDlE8Yc+7fDz/+\n3kZq11gKgEgltl75AD1IN2KvYT440ID5tqmEo8IJbUA+nt9N3Ty8QhRUCH4o\nop2QiCDDkoTO/3jjJJU6Tgysh3BJPubHo4f7PySt/Ju/gsS7EtO9trLn4Qi1\nmCroHNf5W1MZZyu9dcjloeVB9c7a4kCeHuWzEBvgudrOFm0YxexCAIKYUjo9\n5XlPHaPpRDSZvjp/DWfn8cOxsKbQygnJV/otHmrOmjVbhkQ4ZhopxTnLxgOg\n/JpySD1eHmZEWHIX0yDSAdegJ2qg0o8LRmqXPXwAgXEeRBdD97Gck/Mf+WiZ\ndDlU\r\n=Nu7G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCc2Oy4UB20z9SwuWMx3o3M8I2fUkSDiJoKycZHRXkU0gIhAJl6dO20URg3icjO5b6P4maP+Gq2CtK/HgROaJeebQBF"}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.1_1569501678693_0.2886053659296417"},"_hasShrinkwrap":false},"1.1.2-0":{"name":"rax-recyclerview","version":"1.1.2-0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"1.0.4","rax-view":"1.0.2","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@1.1.2-0","_nodeVersion":"10.16.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-FtvDVj7YsET/d0zSMDlM4vSGGbjpY6GYprtfYD6WHe7E6oFrEtVMOIog2mRu/6/1BMRdAFl5CB+SCUQiWOe2tA==","shasum":"569fbaff2fb4ce1cbcd5d2721f816d88aa07239a","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.2-0.tgz","fileCount":17,"unpackedSize":54492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd169jCRA9TVsSAnZWagAA4AUP/1NtC1Af0JXMedByOTWm\nfKwO5tZfwQ6hIQMTdyfyjFp1trIZ4MpOb8EniKpNgOUnWDkWozd8afDG0Zgd\no8YMXrwiTJPz1yvO8+eP/ROSwyfmlHKXJkOLt70Gzmf5RQ93GkXOULPo/vRS\nZFuOk4J4pJotAcXQ9oXcBxFzdPLUsbmDXU4CpQzUy3H/0aYxpzxXisAi0cFd\nfTcPgdXTuQ0zwX1RnSPVPsQMtARN9bCJ7LTjkvMBefuyYiBpba7JTE/30is1\nMwxzaZpLMw2oDqorpm2oKkIHv9d97dc0Yf2xvf2FZquiHUy2NOGtPVik2wFr\nXmV88ycMTnkHfs0/Ld836eohcP/Hg5hoHRV1c/uicq2cjtd5/vrwF0gbQH37\nFoK4eMGu/OhzwhkN6L3lhqIXd8YOFfh3yLgGQpR8icuUTm6d45125BrK3IWB\nvpB0L0hJXYln5x0hAd//FP92QOlrX80Uqf0udohP4n+BQ8A9faRPHBz5F3Xf\nJhej6IO21AKngcjEDCcpKF5SXiW6yaLvkqpRC+/4uGA/FtecknB56OeJf9sT\nudEQQhuN8r+DBe+DselexMm4G8b7L2yUueHG9DNlw/T8G8A280xnZoIxPk9+\nnq03GFCMgpNCrqw3JElHxWyqY7VecX16zwJjASO0IJGLHUBVBb1mOc/CzoP3\n1BlC\r\n=QdoT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3fcbuQhc+OCp9bTQX8B5X9EVyHkHaEBzam5w0kPbwogIgB3Md/sLId2o9h7CQEUfdyZUvC4kHt483qV5K5j51Q8g="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.2-0_1574416227279_0.28363348246046716"},"_hasShrinkwrap":false},"1.1.2-1":{"name":"rax-recyclerview","version":"1.1.2-1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-clone-element":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-proptypes":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.1.4","rax-view":"^1.0.2","universal-env":"^1.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n**描述：**\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n## 安装\n```bash\n$ npm install rax-recyclerview --save\n```\n## 引用\n```jsx\nimport RecyclerView from 'rax-recyclerview';\n```\n## 属性\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n## 方法\n### scrollTo({x:number,y:number})\n#### 参数\n参数为object，包含以下属性\n| **属性** | **类型** | **默认值** | **必填** | **描述**            | \n| -------- | -------- | ---------- | ------------ | ------------------- |\n| x  | `number` | -          | 否           | \b横向的偏移量            | \n| y | `number` | -       | 否           | 纵向的偏移量 | \n## 示例\n```jsx\nimport {createElement, Component, render} from 'rax';\nimport View from 'rax-view';\nimport Text from 'rax-text';\nimport DU from \"driver-universal\"\nimport RecyclerView from 'rax-recyclerview';\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = (e) => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n     <View onClick={this.handleClick} >\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + ' (' + this.props.data.clicks + ' clicks)'}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nlet THUMBS = [];\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\nlet createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false,\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        \n      <View style={styles.container}>\n        <RecyclerView\n          ref={(scrollView) => {\n            this.scrollView = scrollView;\n          }}\n          style={{\n            height: 500\n          }}\n          onEndReached={() => alert(\"reach end\")}>\n\n          <RecyclerView.Header style={styles.sticky}>\n            <Text>Sticky view is not header</Text>\n          </RecyclerView.Header>\n\n          <RecyclerView.Header>\n            <View style={styles.sticky}>\n              <Text>Sticky view must in header root</Text>\n            </View>\n          </RecyclerView.Header>\n\n          {THUMBS.map(createThumbRow)}\n\n        </RecyclerView>\n\n        <View\n          style={styles.button}\n          onClick={() => this.scrollView.scrollTo({y: 0})}>\n          <Text>Scroll to top</Text>\n        </View>\n\n        <View style={styles.eventLogBox}>\n          <Text>{this.state.scrollViewEventLog ? 'onEndReached' : ''}</Text>\n        </View>\n\n      </View>\n\n      </View>\n    );\n  }\n}\n\nlet styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    padding: 20,\n    borderStyle: 'solid',\n    borderColor: '#dddddd',\n    borderWidth: 1,\n    marginLeft: 20,\n    height:1000,\n    marginRight: 20,\n    marginBottom: 10,\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: '#f0f0f0',\n    backgroundColor: '#f9f9f9',\n  },\n  row: {\n    borderColor: 'grey',\n    borderWidth: 1,\n    padding: 20,\n    margin: 5,\n  },\n  text: {\n    alignSelf: 'center',\n    color: 'black',\n  },\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: 'center',\n    alignItems: 'center'\n  },\n  refreshArrow: {\n    fontSize: 30,\n    color: '#45b5f0'\n  },\n};\n\nrender(<App />, document.body, { driver: DU });\n\n```\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@1.1.2-1","_nodeVersion":"10.16.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-5n+bP5FvoEN62etri9lj70xfS8iz0Ozfb5vS152RIb2s3L1ne4631Ld4lGKbqHNW+jvkyE2wSU8OhRm/m1V5UQ==","shasum":"32b432009ffdb9d9101bb6c6a79805d6c39260a5","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.2-1.tgz","fileCount":17,"unpackedSize":54800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd22/WCRA9TVsSAnZWagAAtD0P/jwNySP8UhjRyv/iJwhF\np46hOeqeY9yOkfjqPqoZCcLsqYMzc0lUF9QQypglDWtkBbldceGhova2+/PG\njIsaOJQdid7YiYjZX2uTGY5K2lWRnypV4TT46bz8wiVIp159xrzAffdOXMBf\n/RiWFv3nBR2c1oGDqNgoERh1TuJh91U6uwCAtzD2JmzYnwRR/oei+mVlpaeh\nqOncVIjIhJEUDTsbX666+3N5Wq2rqNaI6TcyxTwbBa3pmYBy3DglcD0HPnjV\n8iE0xa6iuBfenXVoSxZ8M7gcCo3RBTjIFW+aXoo80Y+aR1zVQ1g2zRcTUEhh\nPtPm4wknznahjoIqvNl/JphhEvq8Z2prGLF4+q7sGGXXfWiI8CI2+uoBdz/i\nY8TNL6FEtCRR6ULL2GQaSTkKg+IvH35lbjooeyDhqPYLZUAAAktXZ9TfRkZ1\nElaasD2/cTLWJTXRjt/X8vyqIb3f8GS/8R+uwksTahDkHcJKDiWfecmxlzK6\nKr1ap4mEx9ruAPToe4sStUV/V/KeoheGYQgsK0FMYXvKpp+Eew0YDa2p/6TM\no0zW61R3CdhVlcqv4vsP1cxgm7ad+dt/18ef+AZS9Ap9EoNJ+YCcG/08VcNM\nUo/8w5llIHIwvs6IqtawDD+U/+L2X8aHujmvQJkMxX+WIYyINVV3MVStYgZz\nZr1T\r\n=HcUh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCyiqsHai5A0dU+CfTa8AmAzxxkxueX2oMuV8I0jKWOQIgGN/R8VlSvLruARkHSL+RTP/wYfq9ZVyHCGW2b/Ccaus="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"liangzhi.llz@alibaba-inc.com","name":"liangzhi.llz"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"narutosun2@163.com","name":"yacheng"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"recover758126","email":"761647716@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.2-1_1574662102383_0.18947615343701685"},"_hasShrinkwrap":false},"1.1.2":{"name":"rax-recyclerview","version":"1.1.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.4","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"_id":"rax-recyclerview@1.1.2","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-OstsDJqoKJgGcCHIhAFXYuv3noncrL99BOhWW9PMA5k68eQb22KYKB+0z523E1WU0P7kVBPSF+djNmiasbHyJQ==","shasum":"740868cb6dceb51a28f8094569247e3455df03d1","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.2.tgz","fileCount":17,"unpackedSize":54537,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd80n9CRA9TVsSAnZWagAA45MP/0fVNtj1RCir5PiDpvzZ\n+aKKuEIU3jBE1clSqlcpLP8wEvhjN//VNnISppYD2/1K2fYPRDIATqxHCn0U\nQ306LhNQWKyKMUMNmdSypTt/X0faOeN3glcl1YIWxRBmXfGQ516JFRll+f3s\nQc2DZGjMtdjj8xxvrigOg1Ka9k+t/TAiReIynHgSo/Ok5/Bz13KdDdnCuEvP\noFbXPRLxQ4lfr9rpX4ma+tOTNrDKSqSO/PSuQOYO+jH/bwyP6S1ExmSIArfQ\nX4jI9Z369VY/si9kkvX6luKRzfhBza0l9W4Bo5XzytBg7IB5ER404NW1PMaZ\nsW+ypx6u0/Xo1Oh5LTojL1coxhfzRkHYvylBi8fyXmFn1HQfHOLdjqwZXofP\nag7aoGBj99iJUxEjv0SZu6lP3BsvXTsLOcP41ETBOvpUvmBF6oFHc6sPFz5T\n74mx71iwRe5x3PTA5pT8pukIXmyV9pzMAE+aOb3/mdUzw7BBhCHR8fOs9FOt\nzfVFbbq8E9+hKCdTZylLnrBrK1fbIVRSCQjNYFgIxL7GZNE6AUO1bo6KPJeg\nOiWnf15IPayA3gisFbJQHG6iQKE/74hMf+8PBIzzSt5zckRp7OuOzVhZLwtg\ngHPCjUWHX+a0fXby2SzbtTUXq5UoO4jOOVE2HVbwF5zOQWsMkrFzjhK/9rOH\nzjM7\r\n=zITB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJr3WB19xVyK2erpobzMymwL1oTOmVOhjBq1f6tbwZxQIhAMA1DmyyxfIrFl9PJGWh23vQNzg8upOefckI9Z6Z89/X"}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-publisher@zeroling.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.2_1576225277297_0.45196894754600603"},"_hasShrinkwrap":false},"1.1.3":{"name":"rax-recyclerview","version":"1.1.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test","lint":"eslint --ext .js --ext .jsx --ext .ts --ext .tsx ./src --fix"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","subComponents":{"Header":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.4","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","husky":"^3.0.5","lint-staged":"^9.2.5","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"_id":"rax-recyclerview@1.1.3","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"integrity":"sha512-JTr4oQtbsun8EQHzIqNctRVP7V4OdvSYOOpnP6L5NNp2aSDYzmeGjvnkoemToYG7CLxaqI6Az/Co6kvQL4B0Pw==","shasum":"6a5fdbb83229c71a50044de638a1024bfd350532","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.1.3.tgz","fileCount":24,"unpackedSize":56835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9vlyCRA9TVsSAnZWagAAm20P/R+7KpMXL41MfmZO1/Ge\n8UJ3a1fNzQ8fCxAT54Yv3ndEBfcCXBOcHKloRXYMClChvWIqpEQdS8fxnLFa\nbfJuyN2Usv85I+5rHZOdKE2mFir+S6CLz7Fs8grLSD5HdMD3Lg+qrudChPWW\niQppXQhQi+gETfaeIFT2ejKo3tTTKXqAxO1hTTWruakuqlRqf32WTaPMosC8\nhkEoKRVLBVD+euKx0ieGeqy4DzcFVnjn1g45AEIs1iqk/ZflV0jfEaGdHgrh\njO5rOGPsQXOwWErjfdy1I03hJD0IDq1YdRiZLrBp5y58dMIVCZre2bOWPI4h\nhUvSULb5lKD6VGqz+/wkH9QMeqDXX1X39tAzCJN7cYN9c7jAw1M1O31NKUs5\nptvuRrYCHJqI52QX+g2PaYC/96Lyvykx+cBQ0ArOJAza5mwOKD4SpUIKDXC0\ngt6fWriYfmB62kYgL3MltXLY2T0evEEiurn8UYaDm7GaBSFg4AHQKyKdcJgQ\nuIUniLPXZS3wAVDwzPEKspT6cjs9H7TNtGSX7voDoRjCinzOmX+/gBLKaydV\n36woJNBNFReCUql9rnAPbaTxJjJp4kdrucYIkCXxv3L6HhUpPvkCZu+DDqkh\nEfH34qGA7F3NgmT98BTIGAbQlddSCUifzVcH3VmRP/+R77+7OZfipNYBTqhf\nifB/\r\n=g7Zz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGZxlQKAShViOiGM82KnYk1483x+c+YeIFewNEa8bXQ1AiAfsyMxlF8XPPjr4CWNmL7bSDYs6PYzM/hsTuu3vhxGug=="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-publisher@zeroling.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.1.3_1576466801986_0.7848197753860064"},"_hasShrinkwrap":false},"1.2.0":{"name":"rax-recyclerview","version":"1.2.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.4","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0"},"_id":"rax-recyclerview@1.2.0","_nodeVersion":"10.19.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-bPrfuqGpd6W2qFz7IeMSOVW9vQ7L4E70JQ/wgqK3yF9briVTyf4gkj0nT5MQBg50ikzzybOoiuota0A5/EgUBA==","shasum":"099b8937489638030d411b167f8a4081dfddfb8f","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.2.0.tgz","fileCount":25,"unpackedSize":66455,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejDGWCRA9TVsSAnZWagAAnu8P/2zBwDYPixY5xDdYrEHC\n7G22SCeN0pqyFIyU/UAut2x3IyPlfwV3GrbLtBCUp/TVsIOc3k3/c3P2TrCP\n2sPdnIlum0gqAI28OEckNYIbIGXwoYJc7Foy5acdQntIZJkZFIuPHMOR5wAO\nx3qMfZde3aPdMdba0gq3U1CpDc11IpIkh2TXXray8vgpmPUb/DLk94BCuxfw\nG5X1yhYHwjz8ubTDcJNif5UMTDgCKOWl4hpq43BBvylpMVEjRVnWoL7OAjQP\nnCFtrHyH+gFRtAx0fp7YU+h9wgHfmM/sp1hzAfnToqHMFENQD7kbrbisRKzR\nC7l7yUa+rXtIQ+H47eQTIL7LWxmJnHtGDqW0RZT5nNZtOvv9Lrmzx1yE8wrK\nXMMyw34VJDrgGbyCQq6jsPA2FQnxnTYSEKx/PFysPjBAFCIFont7iwbx3sXk\nwur5MYknbuvfyMJgLZIYDxgT0MsHs6k3frXcHSxWvG15NWw6qVgz6CD/UQR0\no4OqwLch51N4uAnHH0lxnI003sFmehMcVKkxJNqmxvnbyfuYUC5J1nFg/3Gf\nh2Mrp7iYlFRwwi6gnj/MCaluJniHhc5llJYZaf1dvCJJm2k8qmnaDpNc4vpW\njU8ABTnriYNQuEJgPcaP56hwGwBdiLAl1StH+d2cHj4ECUhfv/hr2IShUAvu\nJlDe\r\n=tfBH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUhEeKD15Hlor1Z0CckwM+/Rfg0V98BiTERUfjD1CzZQIgdA3Yk6qb04pGpawx5JBmBxMmAtd37nwLeL9HdIe/QaM="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.2.0_1586246038144_0.8538107411999696"},"_hasShrinkwrap":false},"1.2.1":{"name":"rax-recyclerview","version":"1.2.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^1.0.4","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.2.1","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-dNTygDgXqERINmKKFLVBqcy6XCuTnfb0IoOzYiNgcueNuoBipI9JmlKX6Sdz8R8ggdudasGu12A54DicB7qRXA==","shasum":"7b0b67dc87e0def1692cd3023f98ffb233f00a8c","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.2.1.tgz","fileCount":25,"unpackedSize":62896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevK6XCRA9TVsSAnZWagAAxBcP/0kQZogS8bVqAPOg65P+\n0+qhW3/sNS20Qk1dNRkic6QH5mBVZtArbOmMEefpoyRwrYnrgyNpJ9yeRgbr\nM5e+1f2Uywbdu1/fKeLsK9SlRe/F+T+lc2/J1x1ZQC0y20ylN0IAayp0mVRK\ni36EOm53Y7KGXfFpPwhwbz2jSCVzQ5Z/ujCca6qWLq7iIHpvUsSqbMqKQ2d9\nkGTev+p0OQCuOpfO3BTzf2GorkigFrHNeZMiYi7sgKWkhWGhtDvbjupYXTIo\n09BXgCjKcszBgj36Hbaoktybg6Eienx55KsvkmH2/cVNxqNHst8ic33t93/+\nNvezfCsB8Pk/hkoyRxVB1R1GbxHB5qCFmeeRc2URnZiKLB+baz11xN3Jw974\nvznSmJeOtbU7aCF4bwNijJKb2vIJtuInFcEQmeddANOa/PGoKGFg4AhMamQT\nQOU7zYjbGWmqFTFneLtrzWDnpN32Brs5kgEg9hfij0pECH1JuCMHUAnBzVUO\n4G3UQaCpnprCYsmEuk1ZcsPVeGPWlhjAXStq4kLaNX+vTbIdsEthjg1hLHSn\nYrV4Ry3RtyesOsU8WOgVI2gMdLAVaXErLHUJUqbudF2TRW03mRd+0NNjfmWd\na8CPdy2g6GMBeXk7yWhlY9byfOF/fzfL2gRdZy9DY8DYP4l2knD3UzeulA80\nkyt6\r\n=9O0a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBgDAKWN2RKTPbiBCYubALw9hKWd/2cNZv+aXP65pHB8AiEAoBXPJBsc7AA0lR09DtdCV9pdlWVQNw/5NpyXwcogZis="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.2.1_1589423767104_0.5024727305111898"},"_hasShrinkwrap":false},"1.3.0":{"name":"rax-recyclerview","version":"1.3.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && rax-scripts build","start":"rax-scripts start","prepublishOnly":"npm run build","test":"rax-scripts test"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.0.0","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@rax-types/rax":"^1.0.6","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-plugin-component":"^0.1.10","rax-scripts":"2.0.0","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.0","_nodeVersion":"10.20.1","_npmVersion":"6.14.4","dist":{"integrity":"sha512-Y4PPOFsphkdLggp97hy1Ok+b3Y8Je0p3VVDsExqLFHHzRNTFpvvg1Q9lDD3T+k4I9g+f2W5o06I1VWbZGKI07g==","shasum":"fe48ec2b75c8129c3ce8f6625899fb53d9ad9081","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.0.tgz","fileCount":32,"unpackedSize":65079,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJey2iwCRA9TVsSAnZWagAAHyQP/jQGv0Jki2aHKEY+9j/I\nYy5Wq2XpIti+9OHHklKRv6A60R64OawkAuntRvoszh54s97d5lQ2SuRRPXlk\njwzELnjTMfsm3dMki3/s2XY7egvPsWVAUJXt720JhbbQzLMEuczodzdKiSwS\nPsGdJ5gB0nSVnLw06vpUWF+cHJPJCoiiu7d4XMj9m8NdQVaGYhV5zMmWTSyL\nMA0+ZMAs/iV+0m6T6puC1cPqSU3fnpp7lb0qCPCZt4dSwyWVpxFCUY4MSvU5\nbPW5Kfy0W2EYWbnR+QxAMMEcTSFvuJtZgrX3S5Aa5fpYgDdfOPYnA8t92u+R\nWBkzqfwE8119F6d6jQ/0A8PMA2Tyu3SQO810wFYH8Qsjih7gvREMMD2QV2aT\nD58z+xBFjSz6Gm/MR2M6niZmVgP7ddlJCZHE6hrs5+kuvODRLaERKY0kS/5n\nKCXQt9n4PpSoCZCmlGA4gjV81A8nnJyOn0rX1QG4Fybf9TJxabdHXypXXQVH\nahPeiszltPaDhnHo94oElyKPlH3sF73G85xOO0tQJWNmElKJvJsTZiUTQzB3\nWdD1+a4K5+pplxQkMi8XbFPjM66j18AUuHPkf+IIN8m7AHm7RiwBcbhGsdbg\naHkmpuVN71gkCgv0nbdKxQLy49SGVWB8rxMYvR/JQlKtwnJUjr5dWTB+Aqvr\nP+xk\r\n=V2ix\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAgLboG5Wxup6XNIsMdgYinBNceQQzWfX6Mq4SoHRS7EAiEAk2+TcgpNz5uTv6Hcxha1IKJPD9tKc7xk1FbT3KL+gGg="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.0_1590388912030_0.36446566508748246"},"_hasShrinkwrap":false},"1.3.1-0":{"name":"rax-recyclerview","version":"1.3.1-0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && ../../node_modules/.bin/build-scripts build --config ../../build.json","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.0.0","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"readme":"[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n### 描述\n\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n### 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n### 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| onEndReachedThreshold | `Number`          | 500    | ✘    | 设置加载更多的偏移                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `Function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `Function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| itemSize              | `Function/Number` | -      | ✘    | 返回每个 cell 的高度(节点回收时需要)            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize             | `Number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n\n注：\n1、**支持**列表中的 <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表h5 <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表weex  <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />代表小程序\n\n|**属性**| **类型** | **默认值** | **必填** | **描述**           | **支持** |\n| ----------- | ---------- | ---------- | ------------ | ------------------ | ------------ |\n| onEndReachedThreshold     | `number` | 500         |     false         | 设置加载更多的偏移，快应用只支持值为0 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached     | `function` | -          |     false         | 滚动区域还剩`onEndReachedThreshold`的长度时触发， 快应用只支持值为0时的触发，即列表滚动到底部时触发的事件 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onScroll     | `function` | -          |     false         | 滚动时触发的事件，返回当前滚动的水平垂直距离 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| itemSize     | `function|number` | -          |     -         | 返回每个 cell 的高度(节点回收时需要) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize     | `number` | -          |     -         | 当前列表总高度(在 cell 高度可变的列表中需要传) | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n## 方法\n### scrollTo({x:number,y:number})\n\n#### 参数\n\n参数为 `Object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `Number` | -          | ✘        | 横向的偏移量 |\n| y        | `Number` | -          | ✘        | 纵向的偏移量 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@1.3.1-0","_nodeVersion":"10.16.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-X4AevlWvV91FMbgimJGwLq5fAIquMjqBejD+/4LCFs/MAEkMyXKFvswwBQy0wzfRW3RVwr8XJJRb1K61Sf4/sw==","shasum":"c16c5f89ce542cee7b8e226eb52e2518e7dfc85d","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.1-0.tgz","fileCount":35,"unpackedSize":121386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKMprCRA9TVsSAnZWagAAPu4P/2WMzYFcs7PN13SkoYRw\nyqfXU60Ap5fRjx/5TUt0/6NVdoFiyU4GrpzkQwjopiQv4rx4FB29POHZkk5x\n9X1tE6c5CVR18z0Q9cTCakIQCY3g/uPmgVQQe5/TogLc70vTmTY/DfBSjXX3\n4WCmZbZcpxLeO7D0LjldMHhNPLLOv9U8S0KP0vW4DVd8UgL1xf9Fe7itPUAu\nHth7zz/6aNGSzdaS+A/23ixqlwLyj3e1B12BaS/jhi3k9tyZHtNpXSKaeULU\nZiRh9z4vuH6EGpwxVeoyuwB4gTwHJw01qmN9NIwKFPdGc3Pe8TveIn+HTzGX\nMsyuGelp5LolmOj/SJrUQFRreVDrq/HckD1epf/MFziCmo/vVWMkwhPGQu7d\nb9XAAs9/fNwq/cwB9mCzhi0jkYsCZLRkKqvoqjhNpDcde/oSMW9e+JUd3Qys\n1VYtANMGNhuf3lCMtO0cnqLcKQtggcmNHxvxKtM9xA54Be1wmeKx1JH6YQvJ\ns/6kwJYAISHdwCmJTn8icWsWfwEbsq/exJgGG0p0vbeQKPCajiJBnOLbdhgh\nxoSVW+6oSzE/fiWDKDQxoSRzvRZS6fUcvP8VrpnwvtrZ8NU5iGGB1/82A3Xh\n+NuryBNMvt+h6PI2egzBwqXpEuNAjVQE9YjwFJEwFFd9UtRz12+9UtBoQ3DJ\nBvHq\r\n=cjzo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH+L8KWM3QNpNSfynlx6DZsNHwIYKsTI1eDS/tN5Sz6UAiA7lqc9nlLRo2d9Ca5/Wx9T5Wj9hI9JF0kmTPgaOrk/uA=="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.1-0_1596508778669_0.12234232325177907"},"_hasShrinkwrap":false},"1.3.1":{"name":"rax-recyclerview","version":"1.3.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && ../../node_modules/.bin/build-scripts build --config ../../build.json","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.0.0","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.1","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-zgrXOMWMKW6+J20y1irJ0qeD5miPbr7faEv4uW7YpXJcMagoc3hi5kCRgY95sHJ6v8DiyMAxTlUXl65eObCipQ==","shasum":"67f1caa176afa85395f4e9d0a155ba0f19f0979b","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.1.tgz","fileCount":35,"unpackedSize":121384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKP4gCRA9TVsSAnZWagAAlcIP/3AQqJQT14eu3VnTCAeK\neHT8HNNjUC0nmqpr59CXn1hJ8xFnHo/MVC5oMfIRO55XLLMv83P2wihkay3P\nLmsFxWibuDVI+ha/yZxRiRtidtffcR5zEOHetxeoX0qKhceCTmMYDMpdjwY1\n6lG/jBDPe0mjig1YOYBjFGeL5BUz5inlxXWqohFalZmkoeOUQZqZX7CFnyjQ\nv19Jrwn72ecPuVTADpyyAvnrm1d7COJRnXwSRxYbsuRZoALR5XnDpfmSN8g8\nEz17LpYnW8EXe1ayOv/sjPElUEc+OhVfQzQ4Elh0sFOBPBYFZyRxb9MLqphm\nO2BrUvTXifPNtprQpEWdv5uEpRdPRSGkJOckDxWzg9u6IQVH0mFiHCdDSKm3\n+P6vm6bDIpxXvjxyJThsi4gpTShZxihshCUkXmbtho5dBJwccrm2xj+PyPLb\nXWL7RsWfap2sap+yffxGXyHc2pTUlwvfwIQSMlGiWtZ/jXtayAvc/+h4mXMw\nFogrkOXuWoPxWT03v2W8NQSxnBVcDfrzrEOKxRW+Nv3UV6ab8vXk3XUT+MWx\nDBEXgDAn6OdMgXTeRLwFYc3TmFAzE8rZ2tYS9A4UNlPD/jBCvHDeujMSlwV1\n2lWg0wJN8E4Y38MrFTajKlah3Rzt8izZ8fxvbSqXBSKQgKD9lWZg9VazldYT\nn88f\r\n=5b9D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAvbhNr8//xfHbLdBjjHEF5GG2BDCa3BPtx+V1ub/vrSAiA2OK/VmXLSF/HcgDd2mhplQUFojNsKGXtTuUnygQyP7A=="}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.1_1596522015870_0.39631186510741023"},"_hasShrinkwrap":false},"1.3.2":{"name":"rax-recyclerview","version":"1.3.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && ../../node_modules/.bin/build-scripts build --config ../../build.json","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.0.0","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.2","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-E6O5bJNj58UUn6RmFQRdQAX7dIRLKHYv7O1sFzMK3Bl6On0JOTL4dKlfWGypglg2ar17Zqp0+DopA3v5ARtT4Q==","shasum":"c90c518349824f220ab19d5da4934a039e3e475c","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.2.tgz","fileCount":35,"unpackedSize":121392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfTKx9CRA9TVsSAnZWagAAL2AQAJj48BsyRML+JSXKlsJe\nuakv4zuTcOxPScucd9jSKQXsqYB3jYdgwAIRii1IsxpCXICeLWygAQ4XKcCc\ndD0ZFUA6CIiPixX8SKf9l6NrKGdHZKa5iprrqunju5Hw6x02t3V9RYX/tqYp\neLTxRDS7eRoBhPi58ZXOj8N6eHdyqdxF25HaPmzYMjfogc1nulWJi3MYhDQQ\ngu1qLJqVsJkwulKgVYAtB0o0nSSD0B7DXm1BMGF4PpHPFZf9xoeAdXv/dpLU\n2zxsj6/oK8G8o1mKi1pALXt0D0t9GfN1+8glyQDC5AGy8/rtlrm6oFTgNwx+\nXnkf2G4ZLFBagjdSZAJnIEZl1oblk/uFCK8wemeKL98pB1vR/bmiz1CE/yNF\nuNqUM8pe+MYmf5UPltJaKmk2I2Kw2Q5Axx4Kuc8EaMyY6OjfRaePTIOUG2Mu\nSc4Y/ForkTNuSIMY85T7IYBzvs80cK33odDvzLtcn7VX7CWbXjrWjleCN7zW\nmStTeft1ZRYQY1boKrO/s+bTvKL04OzJK9IuUqT37g6uC8KbgqGnpRgqu3II\n28x3vsynp37ruh//QVSQxwMzyZbrWewKh8yZgH1xGiD+9HF7C1pVd1ONOVqZ\njS/YxnskCp3q5J3und4iY3o9qzmtIJ3bmGaQjN+nYd3v78w98IALhMfT8Qew\nwkWE\r\n=NMSF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnEksF2u2gXlCx295xx1M130ATI1ZBihuOPYeWwQsl7gIhANLoXiP8eqp4qxHjMcCxudPZ0Nw2i91pb295MGlrq7Zr"}]},"maintainers":[{"email":"zqzhuang888@qq.com","name":"balloonzzq"},{"email":"zhengwang2314@gmail.com","name":"boiawang"},{"email":"rax-publisher@zeroling.com","name":"rax-publisher"},{"email":"761647716@qq.com","name":"recover758126"},{"email":"feifeishen1996@gmail.com","name":"solojiang"},{"email":"csf178@gmail.com","name":"wintercn"},{"email":"yuanyan.cao@gmail.com","name":"yuanyan"},{"email":"wssgcg1213@qq.com","name":"zeroling"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.2_1598860412738_0.3200738365777791"},"_hasShrinkwrap":false},"1.3.3":{"name":"rax-recyclerview","version":"1.3.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && ../../node_modules/.bin/build-scripts build --config ../../build.json","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.0.0","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.3","_nodeVersion":"10.22.0","_npmVersion":"6.14.6","dist":{"integrity":"sha512-JgMKxHDsMx0/+bHbEmCepZIDoAu8nd0d8SjyM2JQjLj0Ko3QmLojF8tlXHBsnFhfJvDD2J2wJlcKfawAeShUsA==","shasum":"2f074db784b039bf4d80f3d5e6cc6efff0279d30","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.3.tgz","fileCount":35,"unpackedSize":121388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXu2DCRA9TVsSAnZWagAAw4cP/RpAATa+Npa+GYc+5nhA\nzSHYPMMtaCp3Dg5sU30Mwf95jLl5YDqWwWlQXoGU/IUzPgVmD7FXH+DvEEnf\nfMijS6OOaQGqYsoGobm4LVqtHL9hjIFkepEBU/wjUtKomyukNPa0OriPs/fN\nK3PIyOoEvsPvNLShG7dlUeyMd/QyqKc8X+ePwa5jPu+iTUgqxnlK/gZHSM8p\nqgwE1RO5oJP3Da4LRdb2Euf1d+OOvSgQjnx+OK1vApYO056U/K9EyherwE8k\nLQfswtR5IWuEc4JhjZBfWXckb6ibWj/WGIaFXisHwYVW+Rjflsmui6wxPTRk\nabCAPkxbclyEWL/PK/cgYbe9nDUBInjayt6PMpWHNrDnstlfXIimW7e2sOdM\nHSUlKTEL+W2pRbeb6Lxyus1swdLxOCCURnA4IdNqY2/u/L/QB6xsPYv6EGg9\naTLFgf+kDKJMkjF7eAAMiIP9bczzfiRUNYruQ1dv4t/g3XvgMxUFe4TjSieF\nrCq1+YRHLPeXlgO845Qd7JwB796Xg8UU7S/lDUChlpIuFJ97sBbZMK/Gryzb\nhcVDT/gwe4fir0IuIqkDAOe6tIyZWTVrH98DX9W6Ix9ijPAFhGX1Cz/kfmh2\nHbVAb+9l5Xree0MYbBJ1/3v7hY9M5GIPhqnumlS/hHg2DrOLsLd2+n+EDZhW\npK3A\r\n=G0Cz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB8j9hNUIRMBfwcPsbkA/Oo5A1nTgy5k2QG2P3JsHXCbAiA2owzNOopoJagDnnz2BLizbwCZjhu5lH51Q4AXWosDLw=="}]},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.3_1600056706632_0.958319513662256"},"_hasShrinkwrap":false},"1.3.4":{"name":"rax-recyclerview","version":"1.3.4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && ../../node_modules/.bin/build-scripts build --config ../../build.json","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^1.0.2","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^1.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.4","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-I++ZHZesf1kvz+PETQlwZJoAcbniPtWRywT/7HW2MB3yvVpteNI8wKL7qEWHfkLVNIrUfwgmbbwq002QyPa/2w==","shasum":"e7b0d3020f533d25411816f06b26d0164824b722","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.4.tgz","fileCount":36,"unpackedSize":118367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfcX52CRA9TVsSAnZWagAAATIP/iNcVrLgysqN3I1361Et\nZkmmayOKJnQbQLAWjZ1h3rE+ohnwkUQXZiHqYoQjtjVnFzsvpMy+1h+4r4jh\nsir1dpkuTVPYOVZ7mZHezeeu3Ai9f/vAjico0//l5mCKbbl0Nk0T+5kB+udH\nobQiP0awIMSP479tJad4UMUCYAEHsuUUkY5ed5AoolsvjtGtVbipYDfOeOjc\nR9CstB9jKeJji9FMYyfg2vBmZL+6R5Q7rVVKIky3WHIGt8uDVtFHTNBhUAiR\nJo8QlLrYvtvkJZayQpT+Gildcxbn1FcbwnA/uJ/wBWqQRTw2YiS1AcpawOwe\n2oktJYbA4KsL5vne4dK6BIUeZ/tnoLFozAR4TXcZ6vjF6VM2bcWnxZnM0pC8\na/U0Q4higMAcVBmkzpE7Y+xthTnFBLa+pSqiEJspdR3FH42XHq8mG3V7e3xi\n1sUS2fuHHGc9xHL92SJxdsRp1y7K267bgXel99sfhYqLuU3NXvzfQFpDYFZD\nKY6y6GTA7dl3CBxawExIJotCMQhK852v/F/X6Zlprpy7UC0FQpbYfFxIeo73\ncszDzZMKFLcopoebVD8uoJX9knyONBOaUAYX6BfzHxUi46434pF2f+mHHfGw\nI3VHlSzadeiGF8BMXcuSgjtAlOdgjoAs9TvhrM7s1L43zgL4Pou3H22KBspa\nMFM1\r\n=Ws1n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpGK+Vx+hpUaj2L5NROO1+uYm4ZX6q6T3aTTi3+eY6yQIhAOQLldoUqcdYhvlpJbp3R5mSxOHH90FH2kBWUbr9tpE0"}]},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.4_1601273462519_0.21928335476304128"},"_hasShrinkwrap":false},"1.3.5":{"name":"rax-recyclerview","version":"1.3.5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","scripts":{"clean":"rm -rf ./lib && rm -rf ./package-lock.json && rm -rf ./demo/miniapp/lib","build":"npm run clean && ../../node_modules/.bin/build-scripts build --config ../../build.json","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"keywords":["Rax","rax-component","react-component"],"miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"bugs":{"url":"https://github.com/alibaba/rax/issues"},"homepage":"https://github.com/alibaba/rax#readme","engines":{"npm":">=3.0.0"},"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.5","_nodeVersion":"10.22.1","_npmVersion":"6.14.6","dist":{"integrity":"sha512-egyG5saD3SZAutRjkgL5FAmVAETWRHSMXSQEgNWjfnIpPEsQDcKOJeCRsUhUcHWsggMU2NM6G3i9nkiQUboKUw==","shasum":"38cda4edd731584ec3dc0ed9305a37ec1957c3f2","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.5.tgz","fileCount":36,"unpackedSize":118368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhpNwCRA9TVsSAnZWagAAC1sQAJAUZ6oKKAjgDk68m/dZ\nHr80POg5/mzZ3Yl63Yb0+SPUMttmDUkpyDM7+irP0B7DP1TR8Y8YOHc9Na30\nMFa8mrQnkGfv4UD3S0BUqoiM0zSbjOYlnTE2GBgpquG3qjNDOafYuXL1ks9r\nH41Rb/4lsoNuEEO+WUkrfvXRWTtAH6RV9TDYTZLzw/XLhtlwFgakxwu5vDDs\n2Ymox6MX5/UbXdZHr/Cm3qo/ARwts4HagpRT6/iYCcdIDOa2BxeL7A142tvQ\nhy0SVHBZPwy24tum2hwHRmtcKzOYrnHkcBSFNt6tXSFRVixqGsTee9c/ILRN\nk3sHc6N44lLv7v181gDwOPaO32KWddsDHGcNzUSERfgtoAGFnbFlyEOR7i7r\n+t8CQ+SjviRGSDuqWj+rb5zhFwEBs8e3u7AjFB+8JcYX7la8cjiYz/24GTDi\nWTtqGWEQliuQISJ9tCUdslemafvFw2wAlg5FkkafI2GcVXMVuhCPbbb8utLD\nZJyaHxPnfdVf5+w7Ab9/x8eSG4YONqDe4WV/6Cshf1GIK2WTqSGdcFILYzzR\nmFRi/lwi/3B37y1ejfBswQ8CIiRQa8g2VK10vFQP5tQeo2gwbgiv7mKm9gDr\nlMTWQo7Y8j/D3yN4tmBzcP3DNy4bX4ugTZPJi836fyMZVNH/0Djefn6/VASv\nOrag\r\n=BeHL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAzPaE4w4luv00+dezTwLJWfUnggEaFZoiWg1USyGkNlAiEAkrSUpqtv+NR8MwRa1GEkhGO6a8P/5f6BLIqUzAVXekQ="}]},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.5_1602655088054_0.5991219100156917"},"_hasShrinkwrap":false},"1.3.6":{"name":"rax-recyclerview","version":"1.3.6","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","prop-types":"^15.7.2","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"_id":"rax-recyclerview@1.3.6","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-NPco82DwRr37oBGZUm59Z8haGLkAr2TKredKqgQX/cqkG4oh6gMrdpuuZ3YgIHWRk7a7x0HpHZuf5M9BGMI+ow==","shasum":"fb087336a4519aa58e2d4cdf6e16d12def7f154a","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.3.6.tgz","fileCount":99,"unpackedSize":255362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2XiECRA9TVsSAnZWagAArGoQAJuk1zKTqBhXFET/VhR8\na1hf4AbGmK14n9GmrZ7N+7hLZMJRzApFrcfDh4g9JIj6/CX7XK6jwaNqZHtN\nNREyeUiFXHIAUHVxlEwabUK+c/XKqzNw9zbODSjjy8UuhX26CcmHiqi73go7\n4j/eIKC5QipR5stXhXKWnWdWvs2Z3u/OMLUaNQxhvXz3YvTvaUt5O5u5hO2H\nZ/YXe3E+Wj9sKc7V9Dx/h1S7cd8JivTuBnk13xauWv7u+p9OfiIxYb2WcrPM\ng2dklj0s1M8Wsu0jh6VQAJuj5lvXLENzwXMDbXFzRE3LoQobCkI2FVKApC5X\nvibQHgxqZFFgFlKtzpi8VVNv4ei+dp/r4mKc1X+2jQagxh5X6Cue/rNG7Qpc\nGabh1pOXCWyPd5TlhPK4wuz2Ui5XXJ35wMmde8pU3Nu9S3NFJ+AEzVa12NfY\noFui6M5gyqtJI27In2uOp3McLmUhTUoRBi8PWKi5HfXgEAwls3hONdtFsh0X\niRMsjLyIeMw5RnL+FGhY/51XSHhvnJoKpSjTTE0Q4eyLYRB9vfvjN6E97PmM\n+l+yJMT5xCkNRjFO6GRV+lVIkz6BAA3YQfEIPk+cJNauH+JHuGgJqohU1KzX\nxKXUu1n6kLo/e0D1dS+IdAUVSeLUFjRGiBS/fvjK7XKxVHIeLdva5Pr4r24M\nWIQ4\r\n=wJTg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB+iF9D1ljOzHNbhkRtn8FSaLczoOWmuVi9sywOoKqyzAiBo3iW4l6hC74xMfBOza1BvnBxk7/rCxgE31QrbrGhYbw=="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.3.6_1624864900148_0.4495136168270393"},"_hasShrinkwrap":false},"2.0.0-beta.0":{"name":"rax-recyclerview","version":"2.0.0-beta.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.6.0","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| onEndReachedThreshold | `number`          | 500    | ✘    | 设置加载更多的偏移                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| itemSize              | `function/number` | -      | ✘    | 返回每个 cell 的高度(节点回收时需要)            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number,y:number})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number` | -          | ✘        | 横向的偏移量 |\n| y        | `number` | -          | ✘        | 纵向的偏移量 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-beta.0","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ES2Vz/WOC8QEWLfmvkkCNxAt4pav3BJLWz2wS20fFFey54RP+0me8oqAAnO0iB11+j6a7bSTuPUkS7HFQVB3EQ==","shasum":"496fdc63245ee0da89daedcba4534ffd53c20cd7","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-beta.0.tgz","fileCount":118,"unpackedSize":150475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDOlFCRA9TVsSAnZWagAAN90P/ij2U56vi8LvuhdZ+OVP\nlcfMbTPqNQ4u8SYkgXAErZXwm7RKKtH7A0XoBHw5Zy4L9onkrbpUCYFWq4mZ\njpqhjMpTjKNM7FDb8exr2PDb6pa+phUZEEpux6raFRzV+vZwxRoHAfsdynZm\nzQv62QjibWxtiERIUW3qy+uJUHkTgvo5YS0ZFj7ezHnnUXTyPy9vSTYIq0dd\nuuDGT7dQxHFWVoV5gA1cvitdP4A8ohkD/tJZABmeCeWyso5v0q9CV3Kv9BWE\nek+13PH3g0jReXpRcxAWw2DxmK+7uBOWTNJN3jvPp4yfjk8jaB9I8snH3JXd\nRwSAnQHu/SSQMtH/suyqNseYmWsQjc7qOdEMjATZknfAjVS2oHBVPxK+BSaS\nphuVdPoCleFE8wunD+evjUPwbByYvXCPP0rAQbURvqVB1AijoJZbD/YV2MMD\ntrZZ1fic/V3LFIiMUQn1vGjgrK5y4rn6Ixe4jvOZXE/CQN86cHwNTnYBXm0w\noXd9u9hWctapN1RmrndxkJe1VS52CXeHZ3eFuDFqZIph2UUk7LQgCTKj5SCe\nbPj+KY9b7l7WiLPysN1VEcJkIIBqiiRIs6BujZRHPHN50CaCSIcbyIQbFxAG\n5dY1ZX+Mv0Ox9fuJjymtJ54h24A8MdsYF3rsapSmxUmYxAc85bwrYtsi6UGI\no9u0\r\n=RTPb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxdIolsWVWjN9KGv9Jam6J917E4XKyLBbqVGasHpfJpQIgJZrufrFa5gBWCuhMq3vfiWTompDkuUe0QY4DbBvsv5g="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-beta.0_1628236100947_0.9946631389503549"},"_hasShrinkwrap":false},"2.0.0-beta.1":{"name":"rax-recyclerview","version":"2.0.0-beta.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.6.0","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| onEndReachedThreshold | `number`          | 500    | ✘    | 设置加载更多的偏移                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| itemSize              | `function/number` | -      | ✘    | 返回每个 cell 的高度(节点回收时需要)            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number,y:number})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number` | -          | ✘        | 横向的偏移量 |\n| y        | `number` | -          | ✘        | 纵向的偏移量 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-beta.1","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-EAgOdXZ4snpJoG425fBFVN9X04jibVSq3E+2L7lX6mmiR4Mxe1ftWHpELMqgDSyAPPK0zWCnLVyaDniVzcL+BQ==","shasum":"5618fd7a22a9064400350df6313969818d8ded3f","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-beta.1.tgz","fileCount":118,"unpackedSize":154506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEfkhCRA9TVsSAnZWagAA8nYP/3swk0LCDo1csm17382x\nUOTbLipHmZUL8dsISdYCW2ju+PxsgKn0Fv+hFkDTN7BiCCo6YObMU71tN6Ka\nSAkOKnx2vIDtSoGFPRA8pJuH7fTHPTDZEe7AatKSmv6CnhARtIN1S+gUeeAm\nk+nuhAo7miFw/v5f6+7MtPXl8Al8jt26B5gOOBWccT1UoySd1lpBm1bIyul4\nv2TlXTJvYbVMokaW/vUr2jSgRTvG8ObYLaI2TXn/Qz7KAr6BDcA4q1LItjeU\nRifUTOFA7H2bo97oGCO3gRlmbTJmgh69HW6G/NLQ61q30WOhLNq6jFOenKpl\nz8g7agE+vTOUE/1G7edcu5gciZu7H/bZfm/DvVVuQVKVq4yCspt7U11NTPtl\nPVenWUEci6sSkkJzsyA5lgy0Gfx486X6yJT3pwELnR6kZAaKL1rggthqpmzu\nIBV2xhTwM8ontcGhOKPwV7o1ThFH+tBfMTasHOv2fveLGXq8XlQZqU+dTVO4\npWse7d6xDN9H/qZSFmDLXf/tSStxsOp7TLH0cUf2Ug2aq/R3Zh77QEpMgfC8\n8fFcNy2bYzRhxPWZ8Nc9dODu/4N+BzNW2KhaEmeNdvSwk3Lkt5VjtnFzj3iN\nmXEKPum0UOQtw5Ld4oiNCxiJqX5Vl7wwX9Uu9dbouvEWznjOe+au0ZVnlXZR\nVfLX\r\n=g6WG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBttltS3+Tx7L9c65cwq00y7kYpkRDnCNLrQo0FME6EVAiAom/NHefno4jFRgvb5ahfxWYQkwceEaFIioHkNwUhLWg=="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-beta.1_1628567841172_0.29054111956572815"},"_hasShrinkwrap":false},"2.0.0-2":{"name":"rax-recyclerview","version":"2.0.0-2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-0","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个 cell 的高度(节点回收时需要)，若 itemSize 未传，则不进行回收            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 100; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            itemSize={80}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-2","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-KX958Ncz3GoQCiLBhD60CTp8NXicv9Y10vlWIXVRfR9fZbfBmiSE0yTvqVfBQewz/VT1xFP/KCI/9I9eoQ3C9g==","shasum":"6ac4a9659f7c9005acccc5ed704769210785bfb5","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-2.tgz","fileCount":118,"unpackedSize":154640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJ1L9CRA9TVsSAnZWagAAeCwQAIt2G6mqg/Sle0iIPIm7\nLrwBvO4h9Sn0DCRoyCzgdmUFaXzVp8yQ7UEaPIhQ0edm0LNkBchves7dFrUT\neK4n0SvhaFMSZybYqwRamQ5VT3d4X1YZDPHERE28PQ+6EV3vHutPpuom3p6Y\nndwd1cbldYX0SM9AmGpCLacCEDbELh7DJchsE8AFBteysjgr9jWHWVADihwA\ndLSWPoE71tTLZZGhPcJpAx8xis+b+pqaMR4TIvI40AbLAZikaVcVm+O9CI3q\nywU4r3CdFPTSuKa+ahfG0eIlrrun2qEgS8yn5sPU1TK3StSe9k9u0tklfKRD\nCuhIbM699UrAtX0Z2GiOb35+PGHAo6v59SqjdruS23fDTcp4ZvmxCEcWGViU\ncMZTvWeIKob4cRPaXc6SaRny65c7mFqnKjEvKlnsNzpQMBfARtJc/qiJtyXk\n4oCK0tpitA9aoTx5EPAESHRbN7mFXaB88ChEpbiZfczg/P0CCR4B0hWxcyRv\n9KEH8kYFhoAJCbrVHSILU9rkLJ7DfmhG06lMlkONLGuyaYoNLaP0OIhyemXg\nMqcSpChaCEhF6de0HiQGIP4ETNJVI4Jc+v85CXT4N2aAa+KKMQNQcNsYSgXW\nd1Oy3f9ND4VaS07mVWNteP01+biO89ZVl4l1fbYrD293kSzwxcXnWt2Xu+Cc\neScV\r\n=w7Tg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdfbvbrVbcoAFm9rX1VNZwSqwj4XFtNFv9+uB2qDEoNQIhAIIN2elZe156KKk4p2Q8U9NBDxWDrqAWFiO/FM0s1Gsw"}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-2_1629967100885_0.6410820753213222"},"_hasShrinkwrap":false},"2.0.0-3":{"name":"rax-recyclerview","version":"2.0.0-3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-0","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个 cell 的高度(节点回收时需要)，若 itemSize 未传，则不进行回收            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 100; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            itemSize={80}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-3","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-Xk9U2qZ9zbmNdbFL5ZYKIS4GQ5yoU4PyYypItxCDoHuObbSadjN3+HJhL1iF1LNyzwwWzLsZkaij+9mTCpL+wA==","shasum":"cd2f0141085f3fc65bdf8d01d9d0e41ce644873e","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-3.tgz","fileCount":118,"unpackedSize":157810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQrSZCRA9TVsSAnZWagAAaJ8P/jh49g0VDV3L1BgPaH0I\nkaubVxrGxK46QEI7eYvuXDd7cUTMD0WkTmSnacBnRGK96BLc177BXUyTgRes\nyL1cJEqWew7lujpIeogz579f5X6Itk6cqKeq0w1CZBv6bm7MJWbe7dBeZvJd\nhL5mHInA1UUOIP8p9gJ+BWbHlh/gsdCjBz7137fLwCpARxCK8nNCWzx70cde\n/Ie96grV/GzrsF4sJ2W/C//iDuuhHSdO7lMnVUKBPA05lSFWTezyQxapY8YE\nLuZ88ztbH+Y3qmyNweqcEYc/JBpTdplXMQOdvRLp7Xw3ocF2Yp1mf9C5QbCk\nQ9Bg6/BNXVhx1IKaBQ9lneASL+U7//yf8zuslm4FH3BPeJLg8Rr/xPyk++bm\n1Lqt/gmuyyVoN8g72SHZvdXU+56VlFWyNNz1nIFXRgJedf20vLY6kweYbSRh\n55ztOBtdR4sh3yEMXoWXqQhjCQ1pq5KsswAe7b8hvery0FaZ8+TqccJB8NdV\nd0W/eU/8L9/XsHBVlTyNC91UVbKwDda8qnBY37eeWrC9r9/PQff/uBwtdCjo\npfcgNRPy4Ej95AIJ5FbyWE7N/S6HXw90ghmSVtSrUx++Vz7nhXEhGczbm74z\nOUTExbjmDn4KwlXaRuCjqUtDWXdI6sXas/GlttQmR1fJpcroXqITTMBzRG1q\nOvlk\r\n=dlR1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHIl4SNY9YafGawnKDVFV2LH8XJnHnLDC5y07kS3nK+hAiAhr5Kg5VBAzcRF7cvdNKXoj48OClONupoDjWR+5dU7qw=="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-3_1631761561126_0.5295803648985438"},"_hasShrinkwrap":false},"2.0.0-4":{"name":"rax-recyclerview","version":"2.0.0-4","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"@types/rax":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax":"^1.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-test-renderer":"^1.0.0","rax-text":"^2.0.0","universal-transition":"^1.0.0","typescript":"^3.5.3"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个 cell 的高度(节点回收时需要)，若 itemSize 未传，则不进行回收            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 100; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            itemSize={80}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-4","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-5JjliXs2/Exwo6rGxcEtwoZByjh/btl9kxoXB5FS6cT7+oeYSQ/VvBBjdtV/eFNwpgLLRE+nAIhgePLmMH8Anw==","shasum":"7400ef553c9106dbbb7c13a16a467f8eb52fee27","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-4.tgz","fileCount":123,"unpackedSize":161279,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+JQappZX7AtYlcBuwsiR6sJu8wi425BAtQiHwTXMhawIhAMIV30EFAxh7l0V6aG/4aP+keFkHtXmlkRqAnNgDJcOv"}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-4_1631936916203_0.7408916288359404"},"_hasShrinkwrap":false},"2.0.0-5":{"name":"rax-recyclerview","version":"2.0.0-5","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-5","_nodeVersion":"12.21.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-ATpAZeJPzGenieGq9XvVPuKptbSVQVqgfWUsr/1o/doCFD5r4EM6mbTiC6n8zxj+lTTHDXDR48YjFDRRO1g4Mw==","shasum":"1384abbd4396644e3f7a62f63c93c6bd04ecfdc7","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-5.tgz","fileCount":124,"unpackedSize":358128,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID7IyGT0GE49rmTGuYpAwszgVQN8s0NxVJsTUjKCcy/jAiEAnpDMgNQzD4OoqhcijDJWFScDejM894tg9aiZeXTxbNc="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-5_1635321701645_0.01091156505582136"},"_hasShrinkwrap":false},"2.0.0-6":{"name":"rax-recyclerview","version":"2.0.0-6","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-6","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-CvaV/iYNPJu2NspC8km7P9Xf28xRZxuq8C8vfTpyKa/WEP+F4e4PD0Pyysg+mMbk3JKA4nSbABbVs/X/kYH+PQ==","shasum":"200183b2b93dd1a4049ef880d7593945898ec669","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-6.tgz","fileCount":124,"unpackedSize":358688,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsGYHCRA9TVsSAnZWagAAEZwP/A+oCRi+dvJ91dqmp7Uo\nJmvYhyj6Z1CzgzITsE2XPMGtey0AUWqvf2nkpBvuwA6+ek0yL5Czzuuhsbp1\nrokAWMVVaonAcAmVQM/Nk1OoH7cuf5aEgrb5sL0rTDtOzRyRZfVyozYep1BR\nXENAx2HcJDN2dgdY3cVFKzXGIp9DCBDbrBfnkvI0F3Uz1zzznudm388UNDvI\ncx44QXgAFokOku3dbBhHnbIbLclMEmQvngx9gcZDWkm2WustcDzDuyNtU4WL\nWsoQubxV4TXSPE7670UZ+A8iRQTn/vyvCVUuQ88Qv+xCpmCFjiKIh+jthG0T\nzKyAIHwxrioiZHjLjZMcXRQwSurYe1yFSmhryIS1N6TtLVTqfRHi3tOovphB\n4AzCa89Kh51lf8ktEF6LzjFr2+LdJRqQq3afwx9sVCbzgFXp6/FbEDB6TKjL\nbob2xkngfqRr7Y+tXQ6/MnMrjXUJwfTrQ5XTYx8tuV/pv997pU7x/lz7O+Dc\ns9AdXRvloiQEGbUAtEzhAA6XPTFSWG7JBgUHd0P4x5OjFY9vdRZcOjG2lfdY\nKWIolGfO/RMdBtEGOEMN0jqJ+lbB38AWP3g8PPOe8wuqXu/TJ9dmZq9lOUE/\nyqZv2SGwNiVVXYujfPoGLLShBKB9W4TOPg6whxUd1QYVu4uIcXDq2clnoGbY\nX/FR\r\n=61OQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/V3ZwNvSTGeHFyPaTER/aYTP6r1AzwpDHzYs+7e/o0QIgD9lpgcJII6yt9VlZfUcif8z1jpbTZpF8cmVV9R8oyHE="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-6_1638950407501_0.8749298559508694"},"_hasShrinkwrap":false},"2.0.0-7":{"name":"rax-recyclerview","version":"2.0.0-7","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-7","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-zPeHeUdH+epdq6HYE5lUOvA0zhyIwoLenHejrzk3R8opUvt/nYqxvw621MgRU70CFF352pcj8sNhgRzLtfTVFw==","shasum":"e1103675d37c38ae7f2d45e3425fbf84f17e134c","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-7.tgz","fileCount":124,"unpackedSize":358962,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsGmcCRA9TVsSAnZWagAAmUgP/34c1+BIkamP7pj3yzvX\nVB+bcbTZjKCBuKLeOGIe1cGvIs5x2czKAZ+c3923SqBOLm77BrN/cmnd7ryy\n2HTCtLQXGYwwqwAtWA4fffJxFo4f9QhK4HQX+p9ow+M1yW1x6/dneGXooG8X\nH4RSxrSIDYKXEiFE9skVi3zkSxpHm9zqlJX0YZK4SdGPq+2Vq08XDFUw1rQs\nTam4CL/5LuiXORcIgWwfhdXobRZsKVKMtDYpuEO5moEGfmYfxghHThxU9bz2\nif8LWe2Vv3jny5K3JguwKwJsb0rK4UXI+vyrFR1EsAdOH8/j1nHuVTQvuygM\njKOhVtwn0EZy1Z/DTmelM6MePHrENxWrCDSbOiElro4mej4gAhG8iUyDDTAG\nIv1neyhBfWagxMgFypecXQF/4MRmbqX/sibvJLcfYUJSSstADzqoplzoaaSk\nLASfEj4qzYjERNnjlO8PX+T0EYGeyXaKQvqena+xPwNZwJqZUeHdRKby7Owb\no/PqsZAA2xsyL+FzfnuXQsymP/NF31iKB75fXwCvP70VlHpVKiuqMHK0hque\nmcYIKA057TIQyQ64w9FnoSHEaDxOSE+Gu6savUZMB2wkJCcl4yLgczUSv52s\nl6fWTjgtn0kRCmZhW0AoRsBWk3PK5I36BTrXmG32kFUmCRH1NgVUH18JE9P3\nwVsZ\r\n=VOT0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDjkhd0Dy6rS3N0xBIHsVQoIbCLQ6nqpyiiIu5Umi78OAiEA2YKpf7/Rzz504WsDVxZO3gZXATfDxQb01yo4BEQg4OQ="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-7_1638951323870_0.19219725054318237"},"_hasShrinkwrap":false},"2.0.0-8":{"name":"rax-recyclerview","version":"2.0.0-8","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-8","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-ckl91vGmVsG7ItYp0NQsb/d5/ruwkyLv3p041xtUXA18ZatYAAZxopjbJ+471mRQXoKPoBykWJIQy4rCwJBP1g==","shasum":"c1135f3e412faf30f28ffa3575f3eec0a8e15180","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-8.tgz","fileCount":124,"unpackedSize":360303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsH2HCRA9TVsSAnZWagAAlm0P/27+mCbnHEGSwzsjM+GP\nBGcQqethJmYtIZHawNXIMek5ryxRYYNBhiZUbVI3VC1Cqim5mB3FL2A50XkP\ndPJOmNxoAC2Jx9inKBW0Zf6i/Mmcbt1MTTEhq/UY1vTGfUGxYAjyneNq0I3v\nhNlXVPlkCY7tz0aKhwC4iWfFL/2vGvArBHGU9p5V4givDm+ZLNaByiOzmcBJ\n8PDCnsR8mDfJT51Ridh9MpK8eTMFit2J8ncFRZ+jIykesKYeQ/QgdS3bfByZ\nrmU7ugvwh/zEWT3n0xXgzYNvaqW6uGaTV/3/w3zW5qABKAh/XciK8j8JrqDp\nDoj95whViF+5Cdq50ky6rbu7P9+5+ypkx7LiOXiXT68QNZXRbXy8pH1POPHi\nM9cDvkk1rIARptMO95fNQYoWa07RWZy8qJI4VWkU7qTR6sV1OuEeyxclJ76X\nCGEYN8YxrGZufIE+WFihEpclkt0Y4/DpifZXTZdmMDr5TjnRHb0o8uHtbq2k\n5IxWQOd/x2KriovzCpJ3gQLpGE7OyEOHEztMWVnLskhzLp5dJLQglmKLvPBg\nz7wEbnTvlemtB35tFcolY+O7D3YWn8N56nSuPRZyxqivUCte69kmCAP2fFjo\n7h91zRuB+7fKcEYZuMfxEeFcbB1xR+K92lvoCxfzjJ5zP+nXGxKSGwMcYzZe\nnDRZ\r\n=nr0e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHMhEf5GaycZkSLZIZN403D+xGsiMu9k2EVIdVHIthZAIhAKcH4H62M5C+cfrfREqzGYubjhf+b+kS5P4JDHiwZuXV"}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-8_1638956423301_0.29869111105912083"},"_hasShrinkwrap":false},"2.0.0-9":{"name":"rax-recyclerview","version":"2.0.0-9","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"@uni/intersection-observer":"^1.0.7","prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-get-element-by-id":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-9","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-TH6aDL8fRBCrib1/rwc4yjxKVWO2eH2asy/3rMCiNHjwyZx1Y/XPUMXJJnmAupetQfb0UtIHofuvVp5j/ECbpg==","shasum":"a96423958194f06684ec724b680992027a4e7921","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-9.tgz","fileCount":124,"unpackedSize":362243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFwIBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpgqg//eqUuuAzG7N1GvBo7rk5VTkjSm5AuD2OCMgaIo6PwDzr0Zxo1\r\nfLWEBPJMoeKCzJkiDBLPlF3gyW2IduM/tyo6sqicOATq7I/VglwkLf+7Fy2S\r\nicrjxFIn8bYRFxplTZrC4/kxGvVbYVN1795jo30ZQYBrjIEPIaogstHwOL4p\r\n5p+Vbe258HSLXeXjAmUcYkO+P26LjrSF5crgUNU27t0PrXFeD3Zm2r+bqG5s\r\nvhqfObOofwpEWMYxU0x7s1CaCdx0OpiFhzKGFwyzj/3iAz4E28A2brC2D1TO\r\nh18ss25xf4oQrVEgkMaXExUu+O6YnY4F8yUj+j1nmxUVfTKNhY15GX6Y+08b\r\n9eqEMx1sawx8ylJ1jUPLA61DNwaV1AXCLonMSl1aVSUOaNotJGRKF/AqAJwa\r\nWGr4xh302zTkIsv9m8hwxEHc7CcOkvAjkPLchJ3ZhlqcDn8nXE7HEC1YKf5e\r\nDkt252AD2zqKBF2fgutbNSqV9ZVZHX8rzWDemS64ANNBvLt1tuIbpGcnW/LB\r\nNFlNThGgHQZIrLHc6XGs1OiepiBKa91AZxbvKmkw+vIsTY/MRmi3ou/l6Zxm\r\nuEqlRaAPF7TPNJlxmTfMnEHUCjAscYZlhnK2wXi+hxDeTcQ+QNgXX2wO7iFA\r\np01/QiWFQACmlZfYHmZNpMr7yEdZx3Ubgi4=\r\n=6/+M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDu09SlRbdYmXki5eFMxuTWB9V6Q0aTnB3Vt+Y4jZwvQAiByJr0ORvplTRpRTw63V/D9mk/Ab/YRmdlIirgZJRcVRQ=="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-9_1645675008827_0.13179264520893152"},"_hasShrinkwrap":false},"2.0.0-10":{"name":"rax-recyclerview","version":"2.0.0-10","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"@uni/intersection-observer":"^1.0.7","prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-get-element-by-id":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   √  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-10","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-RhO4TxSAAyHWUVfwyf6Xkz+pMJjo94h5MJqgSnQoBUou9v1iT3KL1n8QnxSZuYex09l0b0DN/tD9e8qAaWegAQ==","shasum":"4d410424a37df672ec56fb411f296d8dff805977","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-10.tgz","fileCount":124,"unpackedSize":361784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFyhSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp20A//ciZcTnYnWTf4sQJDLFDcx6LKVqpz1xoZHCJmtTexJQljfG3G\r\nkK68MZ+HreC33dIBQvkjrgj5wiPvDCE0nAYkrI8eG6hhh2gr8n54xwg9TJGZ\r\nRAxJuPEnVl0xpYlMihfWYQytYCuDm7JTKvWZbn5ByGd4RCcfJHamo1T+G7Rz\r\nMD7aeYtpK94uxZN4zlNTsgSdBC7FxBSmuGN1Au8Qzb/Z/qySr+uOSJEhtr8r\r\n4mQRNHfEHDxP5AIPMM+mSPxe1iVTyYdoBJgQ1BSMUym84WQhB6P3meBZSH45\r\nM1K3mCDsLELjsQ7GnoTgY3tgilKCjGkp5BxydL3lq430m5o/b8w2cZryidm5\r\neJGIC/tboDhSIDKRML3FK+Ap38aUguDB1e9sIikXQkfhPiF/6UrSGqvlvKbW\r\nzZuUUwN5MxwfUeslrZ4czIeSD5WSgxXHZv63Rm/Wt80eIcKdWyPx6llj1HwE\r\nncgbSPep4+ZNEKdSK8bLgMHKhy2rhEVmQT/cqL72C5C6fNO3LCRtb8F/QOIc\r\nwcviabfBfvEAq4/7+iOX/7UzRJ4Lwjdb5RE6dSkfAmhUtGqV7uInAKrc+Snd\r\nxFTjzHa6AqERMJ9uc73qBaJmGaxB25owoMLIn9HDHi5LiOlH6+QsexU86II7\r\n/uQbfhjMU7gllMYIi6YFmgYMFQLTm+ZfcGI=\r\n=pebS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDL6qzgEMmIYUtkb+NIgfqzn7zyIJBz1MQh9wxEZvgUagIgRNi3srYLTkOSS7eY70td89XFE58m4U5sZMeP4sOUI0w="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-10_1645684818162_0.9201657264594121"},"_hasShrinkwrap":false},"2.0.0-11":{"name":"rax-recyclerview","version":"2.0.0-11","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"@uni/intersection-observer":"^1.0.7","prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.1","rax-get-element-by-id":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   ×  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| itemEstimateSize              | `number` | -      |   ×  | 单位为`rpx`, 当子元素不是固定高度时，可以传入该值作为元素的估计值，本属性只支持 Web           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-11","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-nO1EcMxz8MkIl40WnPlqrpvogPnd0oHIpOW4Ep5atSRzCbZ4NrBczWMG9kZtboU7DkrkALCq/xmra5AHLBNPKw==","shasum":"189ade34c4838384088e3aa71a3313e1b9aa4be7","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-11.tgz","fileCount":123,"unpackedSize":188503,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiILWDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmriaQ//dQV3/iQUW5+4+51CZPreg0ZtbTHqBysUlMuFlVeXaI3EnlSS\r\nC6epVy8/J9DgwfKDwrNvcm+n6CHXbPI+XYtVO4oSOSOxA+sFfDplWjjRJIwd\r\nzdZ2z94tTp65oBfOEy5FCjw3I9Gm7dQnKtF4D/vEgfGilUJ2IF3JGWmNo04o\r\nzxElXfQASUZevPiAU1/C1LHVGVYnTEyZ6es9HWvY4tEV/pMisYwye/oRTFSR\r\n9lNqfYczuqG0e1XzvPlIfdqs1/yd+d71jLxni+GST6dgWknlTh5HrtCcv7hR\r\nRxFXY/kh5rSfqcsx4iijRnz00jzVDBXPO3BOLjxH/W9MICHfixD2g11ZbitZ\r\nLXGlVClILUG2w768q9C854l1sPdm1415MFiqoIHEJY3ypZvTZPt1t7xYuPnm\r\nD3zKKWWrI/a2c7YJWr9vfVxZhuKOGbYgbEdmDy8qMGNzLHWiP6BnaikJxYZv\r\nT47AB66KLTtBMnHNBZ8GuFPFX34Tg9ooyeOdn+KqZXlBgbEi0x2nXu4h8pbC\r\n/xtnoVEYOnEPkbkrDPDHDTjVMaOTpawrmBpbLrN//vrt5pjdXRDolpyhA/gN\r\nWd2atxqci0+iFo6tCvpsVdp08N9ee+v5RhvRIbQJGzWbYj8/vF4QUc+61W0m\r\nO0bpyctjqZ9OqX5lIN9bnK6BFhwgQFWWT58=\r\n=Zvf+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIECDXO7mHxrgMcsbmawu/Q5QjfWvqh7a3A6ZAr262BDKAiA8Zo/2j2XPJgewRB3GFja0fsAniz0ABBNC5kNM3cYbxg=="}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-11_1646310786965_0.34889478959086095"},"_hasShrinkwrap":false},"2.0.0-12":{"name":"rax-recyclerview","version":"2.0.0-12","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","exports":{".":{"web":"./es/web/index.js","weex":"./es/weex/index.js","miniapp":"./es/miniapp-runtime/index.js","wechat-miniprogram":"./es/miniapp-runtime/index.js","bytedance-microapp":"./es/miniapp-runtime/index.js","baidu-smartprogram":"./es/miniapp-runtime/index.js","kuaishou-miniprogram":"./es/miniapp-runtime/index.js","default":"./es/index.js"},"./*":"./*"},"miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"@uni/env":"^1.0.7","@uni/intersection-observer":"^1.0.7","prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.1","rax-get-element-by-id":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"3.7.1-1","rax-view":"^2.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n在 `ScrollView` 的基础上，按需渲染视图内的元素，并回收视图外元素，以优化长列表场景下的性能优化。在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n使用时，如果为垂直方向滚动时，**必须设置高度**，否则元素回收功能和滚动相关的功能将失效。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n## 属性\n\n在 rax-recyclerview@2.0.0 及以上版本中，可以使用所有 rax-scrollview 的所有属性，具体文档请看：[rax-scrollview](https://github.com/raxjs/rax-components/blob/master/packages/rax-scrollview/README.md)\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| itemSize              | `function/number` | -      |   ×  | 单位为`rpx`, 返回每个子元素的高度(节点回收时需要，不需要传递 RecyclerView.Header 元素的高度)，若 itemSize 未传，则不进行回收。 如果每个子元素的高度不固定，则可使用函数的方式，例如 itemSize={(index) => {return 100;}} 其中 `index` 为参与回收的子元素的数组下标位置           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| itemEstimateSize              | `number` | -      |   ×  | 单位为`rpx`, 当子元素不是固定高度时，可以传入该值作为元素的估计值，本属性只支持 Web           | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| horizontal                     | `boolean`  | -          | false    | 设置为横向滚动                                                    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"quickApp\" src=\"https://gw.alicdn.com/tfs/TB1MP7EwQT2gK0jSZPcXXcKkpXa-200-200.svg\" width=\"25px\" height=\"25px\">|\n| onEndReachedThreshold | `string/number`          | 500    | ✘    | 设置加载更多的偏移, 推荐使用 string 格式来指指定尺寸单位，如`100rpx`                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 子组件\n### RecyclerView.Header\n\n头部子元素需要用 `RecycerView.Header` 包裹，头部元素**不参与**元素回收。\n\n### RecyclerView.Cell\n\n除了头部元素之外的子元素可以被 `RecyclerView.Cell` 包裹，在 Weex 中该组件为 Weex 的 `cell` 组件，在 Web 和小程序中该组件是 `Fragment` 空节点。该节点没有实际意义，所以不要在该组件上设置样式和绑定事件。如果在 Web 和 小程序中使用，不需要包裹 `RecyclerView.Cell`。\n\n## 方法\n### scrollTo({x:number|string,y:number|string})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number/string` | -          | ✘        | 横向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n| y        | `number/string` | -          | ✘        | 纵向的偏移量, 推荐使用 string 格式来指定尺寸单位 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render, useRef } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nfunction Thumb({val}) {\n  return (\n    <RecyclerView.Cell>\n      <View style={styles.button}>\n        <View style={styles.box}>{val}</View>\n      </View>\n    </RecyclerView.Cell>\n  );\n}\nlet THUMBS = [];\nfor (let i = 0; i < 100; i++) THUMBS.push(`box_${i}`);\nlet createThumbRow = (val) => <Thumb key={val} val={val} />;\n\nfunction App() {\n  const viewRef = useRef(null);\n\n  return (\n    <View style={styles.root}>\n      <RecyclerView\n        ref={viewRef}\n        style={styles.container}\n        itemSize={88}\n        onScroll={(e) => {console.log(e.nativeEvent.contentOffset.y)}}\n      >\n        <RecyclerView.Header style={styles.sticky}>\n          <Text>Sticky view is not header</Text>\n        </RecyclerView.Header>\n        <RecyclerView.Header>\n          <View style={styles.sticky}>\n            <Text>Sticky view must in header root</Text>\n          </View>\n        </RecyclerView.Header>\n        {THUMBS.map(createThumbRow)}\n      </RecyclerView>\n      <View\n        style={styles.fixButton}\n        onClick={() => viewRef.current.scrollTo({ y: 0 })}\n      >\n        <Text>Scroll to top</Text>\n      </View>\n    </View>\n  );\n}\n\nlet styles = {\n  root: {\n    display: 'block'\n  },\n  sticky: {\n    position: 'sticky',\n    width: 750,\n    top: 0,\n    backgroundColor: '#cccccc'\n  },\n  container: {\n    height: '100vh'\n  },\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: 'center',\n    backgroundColor: '#eaeaea',\n    borderRadius: 3,\n  },\n  box: {\n    width: 64,\n    height: 64,\n  },\n  fixButton: {\n    position: 'fixed',\n    bottom: 20,\n    right: 20,\n    border: 1,\n    backgroundColor: '#fff'\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","_id":"rax-recyclerview@2.0.0-12","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-iRc7qWx14svndWT+ZggQ91LBjaGNHu7k6ahsh8MTNJ4DNp/3V0g2p/Fnbo1iKETsaK24PYWWJkuAtFKFPTJuog==","shasum":"55df2675acd1ceccb2daeea18e0f07655e86f27f","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-2.0.0-12.tgz","fileCount":123,"unpackedSize":188389,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiILaqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqS6RAAgutd7GoGpt6ZGzJjjS2ob1GPpNyEimaWPQCDdh1VgxebvQvY\r\n8wFLc/mdhEUIrGYkXWLmMU5GOucvS1Snp6NgH1rvPyrofLHtWvURkVz7X33h\r\nNCb+qJ61XzxYYeY3CYdrjRFdAsOQcKAAJW2Y3C/WZT/8dtL/fIB6do1YK0gX\r\nEyb1cY9ZbIsLMN1V96WjvHyCIRbxxPv9LhI/j1XiUXlYFwMr+LETjpcJfzxC\r\no3BckaCkNEDT+BvyoC8HF+XRPAP19tKEzYPw6L+L6tZszMkaVytCVlc0kjI9\r\nvnpBm2Xp8R04fQAm2IQ6w/UGuiCPch6OxQUbpECYSX9QECPV3G8aQMf+jLPo\r\nfcj8XWWIcuS04+Ah7LR8vYfJwYWV40IFmTdNSZkvvI6ODTyXt3YyoTl9nOqt\r\nSNmUunkCoxGSCRl+8pb1+19RgRKdWEXysRp4Ch1cyJsrUToIyi5vqGjf67WU\r\nYVK/J0bCuZdKerIXXryVujmg1RTbhKQnZEw8yuvq8hnmnYm8Y1LZbJIZE3+X\r\nxzHGUWlduyqy9Ntp3t2dTH08fwbNFoGjRgfZJapUIZ71ncLMGAoK1LoiP/AW\r\ncBYI1ITXm0FSMn4Kl2iQhakLXRIO3OzKLRLVNnurJkiPEsbtEydzFP1/E2Xc\r\nDQpKusqkRjEyxO38gvVh3Y835U2LVeVmzds=\r\n=A1uM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMlEDQ3MKe1qKuURCzgCLsBkiuTFs7svkxfQJObn8sfAIhAJhnWgFjUanIEdwHZCDmp5S4/BsI04R0heCFbSmF7csH"}]},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_2.0.0-12_1646311082789_0.9557195093258541"},"_hasShrinkwrap":false},"1.4.0":{"name":"rax-recyclerview","version":"1.4.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"gitHead":"2efa1f54972e1533e7a76f116e4e0a329148777d","_id":"rax-recyclerview@1.4.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-OvXCMt++vIrEDhQc/KbTQ4zAl0topNU6TA8u/GUPwYG7YeRC8aO4Jtys/TB1Ov6Fu+I9mK/IbI9whUTrz+K81w==","shasum":"df9d4bc5fdb654695e5539dded1fd30c64e2de17","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.4.0.tgz","fileCount":99,"unpackedSize":260969,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHBLbXcrEZLDDeQ+TBUvnlJeEDuxMuIuKtE1+NALw/uwAiEAmo0vTgwUMV/FyWMYT4OGx3rlL+MaiKf1hvyNpXrD/5M="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiuVAkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrwpw/+O3SP+RUEDQemQgzu/p9hchR259SLTmbh5oxhsAxzs0xj7F2G\r\n2n4gDGQBQMFgTSOFoB8e3MZedbmVItnlFsFJ+Fd28NfGz285sm2U1jTUrPqw\r\n9gGlUcbOKaTc5iMtvKGcrIlN4r9FlAFbMlvvYFG5rQ27i7poW+PT8Ce2h8qS\r\nkyIVgA22AVNX12reRCIkwF3bpHbPIVexryQRzxcj+gAbYABICpZaVKhFWjW/\r\nYMKpEJU8/ALQ2psW/OGTlW9DG/DiHO3GN9G173NE8PlC9eBfjXMBUMwtDDQa\r\napO4VOh6EeRPcunK+nq/HrAZd6QPOLoDm1CsfwVA5TYy05gKkjaMx0Dbx37n\r\nLgsoE4ZdijMG/dpCAqxbECfg0BfVoYi6GISbaG5t3RTJ93wefXpmfHJRj6St\r\nMh4lzMU4qamQQxbfo0YbNAzRSMsdykLUy4NhcPSffGzMysiVjZgooZWe9tSn\r\nv3p2Yig0QuF82XWqNcd/EtnahPEq3/bk90U5weUtd6fBg6WTruBwf73buGI0\r\n0fBBonY+/pMcBO1dtumzhocdyXDgF8gCe6onB1grG/qf6hI5KaJ5Ui1UClOf\r\n7slsiuDFv6Jxa2o2cEkFqo4kTrTsHc/lXLGetA0drlOng0WdcYYLyuIIEVul\r\nUQ/IzgCptT5GBxqw2uSDuyBiiSxd8vTqaqI=\r\n=k0A3\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.4.0_1656311844355_0.6916701057038814"},"_hasShrinkwrap":false},"1.4.2-beta.0":{"name":"rax-recyclerview","version":"1.4.2-beta.0","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| onEndReachedThreshold | `number`          | 500    | ✘    | 设置加载更多的偏移                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| itemSize              | `function/number` | -      | ✘    | 返回每个 cell 的高度(节点回收时需要)            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number,y:number})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number` | -          | ✘        | 横向的偏移量 |\n| y        | `number` | -          | ✘        | 纵向的偏移量 |\n\n### scrollIntoView({id: string, animated?: boolean, duration?: number})\n\n支持 Weex 2.0 和未指定 itemSize 时的 Web 场景。\n\n#### 参数\n\n**参数为 `object`，包含以下属性**\n\n| **属性** | **类型**  | **默认值** | **必填** | **描述** |\n| -------- | --------- | ---------- | -------- | -------- |\n| id       | `string`  | -          | 是       | 需要滚动到的元素 `id` |\n| animated | `boolean` | `true`     | 否       | 在设置滚动条位置时使用动画过渡 |\n| duration | `number`  | 400        | 否       | 当 `animated` 设置为 `true` 时，可以设置 duration 来控制动画的执行时间，单位 `ms` |\n| offsetX  | `number`  | -     | 否       | 滚动的额外 X 偏移（仅 Weex 2.0 场景） |\n| offsetY  | `number`  | -     | 否       | 滚动的额外 Y 偏移（仅 Weex 2.0 场景） |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","readmeFilename":"README.md","gitHead":"8b6f71629c4db110848986147526f32761f04321","_id":"rax-recyclerview@1.4.2-beta.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-5X9+v/YrCvumODMj7pvqbBFBnWToAoMk26d7iAbVeTv7xso7ljB7kVfM6PF8FRRsjGY2yFVhY2YIHYgr5YLRmg==","shasum":"0888b93f8a1150cbd823ad9170e609b367588e0f","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.4.2-beta.0.tgz","fileCount":99,"unpackedSize":261507,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHF6M7JOkP7CaIo8KIRg/UfO9YkJc5cYToaxzqdpYGyXAiBbz/KZf92XAdBDCgy/k4Yn0QJ/PvsmjJ3BSTA4oe36Ug=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2SMiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhihAAgEpog2FOGO+/+ADNAhBznNIHAPY5KiOU7LSZW6cwFSJ25Ktj\r\ntWyJj+9k9uKdA2WKSjGtbAKTHoCMwEWqwoezdewOVvwCiw9KFSQLZWyJnua2\r\nJsex6qYHMcfXBA8OCxHyLrXKM3XUVruUreLWPMXtonJF4RGLcYfN8Z82mmKv\r\n8nhYn9zFnqVqSHNvZ6B8U2IYbvKPdVvI8i82oh6vLXRPGOyAzCOPFZZJvNb2\r\nwXQ1j/YFuEDY+Ac5+hRfVseL2M1JD74Y867QwaXOL0zhTkUS/3HqgCfGuDzr\r\n0gMNtXEN/dCn2PrJ25imCxvA/GPBiC6+EsuIuvH7ttQG67QKdhHtTlKwKjOB\r\nV9CWN4th6ULWdYpxUBmq47UU+TPTq8qVYzWUNZLLrHZPRGu2KpFyyBFLai0K\r\nfoI00EQ1Z8stnUP+Y2NK2HV+jZqysfbIYOq+oHkZImdZo41L28DMClhViflZ\r\neWRyRSISsD0mnSiO2LaxPc9SkU04TZ1HLufPIx4vakM/tWwTAmNqivxcOJIm\r\nvk/R+U9gSahD7sc3xN5RuNRzh0neKM5TVUIUA1wQ0BBtfNhm5RWyTx34cSkT\r\nUNg4IM1rvwfmH6HVmfFw0YtfxIi25IkMVEAnqZ0hpLsi1DcYEH+t5iRTNQIf\r\nMtRz+n1+3HEqLICN9H9FHFsAyn6Q4huq5f0=\r\n=TEyq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.4.2-beta.0_1658397474143_0.6020692175541411"},"_hasShrinkwrap":false},"1.4.1":{"name":"rax-recyclerview","version":"1.4.1","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"_id":"rax-recyclerview@1.4.1","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-/EfDM+OJUOSKCOotEXiFtqPEYOgwA94I/DQRERKwrcpU/mI4tJcbqZ5NoyjT7ocWEHrClUYSsJMAHVrPT8C09g==","shasum":"9c22e27d4680f6ddbe397163fcfad1c0452feeea","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.4.1.tgz","fileCount":99,"unpackedSize":334606,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEVr9EDDF8unoILzdTjTnozeXarwZFA5xJJb+aA+rVH5AiAM8RjCcHMSimevW15b6akX78kBmnc/S7nrRaWBzK42dg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi3hemACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMTRAAlUDwOUfAcussSlYVFTwLYp/mbzohBOy0UyqVktoGpLvQeIvt\r\n7PGfC0vGE3vUDNBY2iyEcKKi+dem5npGAapLjnS50dNj3w+p4ufm3q+u5u04\r\n4d5L43G4Ns08qP1KKtssNcMxkzj+cTNQybZqJN8mK1crLSbNExXjf0/IO31P\r\ns+Kass2OY53alr1BPx4tofsq1biRGgmSV/HH8ygrTYD8Mrky8u+ANwLKQGlw\r\nl8i6mWMyEFslCkyldKf/E2+C5NW9EyLTQPkzhgk/NB3UVBmb/UlX2Taz4Gnp\r\ntYz4LMU75rxU/QpuSrmTcY6zSHDUTrc3uzvwWO+hQVWhzu83ul2C4WvNF+yg\r\nJRuvNePOwp5mZXTCNwUC/YiANc2zCTYFklEch+vjquw0osQymVFUnqa24wpC\r\nZIkz2tFLEF1/iRyY+EPVdwx2WUrph6X/eUTHWRoVGqgh9KTJyZuJvs4CCoz6\r\nHhS/Jo1hbjumzisCxcI65nwK4PcMASff7nFVtQWyTjgXQxS9XvXH40sw6H4J\r\n2b83RkhUiyo19XcFupKb/w1QH1+olL+r9Pj5w882PPX3VNOxlQi4DWk+BoMF\r\nB7ysm3UD++GZAeVpkK6aNfsKxPJ+U+2Vy7lrj6y6SpvXpDo//SmwWlCDNVDY\r\nTx6zZOo87VPUlegsnq//ygfH5wHqHespq6I=\r\n=ZoOK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"answershuto","email":"answershuto@gmail.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"answershuto","email":"answershuto@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.4.1_1658722214564_0.25328676010606843"},"_hasShrinkwrap":false},"1.4.2":{"name":"rax-recyclerview","version":"1.4.2","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"_id":"rax-recyclerview@1.4.2","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-p3MWbct/fLgbPoMHFxrvNFzCLMBtqWhbnajqxjNhJVqczXx2Ib6+UoPO+3+ClDXjQKsY4f1pWRHirkEU/smYKg==","shasum":"87993e0829105061957adfe78d0828b3a6063ac9","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.4.2.tgz","fileCount":99,"unpackedSize":263426,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUZCre0nbDTtt3/2IN+N2+fUR1OF9z/3dGwmDDcZA6CQIgcaRyTnQHSLldXM2XEnc2MawdmNFRjKbLxGJr+kL8b2E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBuXzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmod5w//XI6W6Pn1OkuxSsVQsnKO7RSbfuW70E8RSzb18HMtXfG2EeXZ\r\nm9M7lOz9HDSCK9jIcTbfBM0h55bAZ4jOGRQpYHAj5/2rEZWDHdebWi4iOd4n\r\nINn6WHi+TU8nbPQ//uRx+lIigKEiqCy2xRwVWH967lEBb7WDHeZ8Ji3lMxDK\r\nhWsks5LJLYlx0kh+5bGHnCj/ih/zUGLMI89qKnCzCzzdqNHq8rMABO4p9tos\r\nXdeDujB45nOa7V3YMMcCgDJzo4XeDLn7K/xIR44Zj+IZkFzAZjGHyDCoEUbC\r\n81qtQYDVGmIT3RNPKBQGtbx2jDFm1Zu0hRMuwQTLyNux7K28mh1NaILlElS7\r\n31ixA0sxHG/Jq1afXagGVzQRR16wBDgX4kSVl1G3/yOmMxseNYRXkLSCYGk6\r\nzamX50WKn27Dd10KNJ7cK6I4suqCQl2UTty7U8rvAG0nNNqFf+yi0VLJf+dc\r\nqcbMB97aAf9PWTc0bTdF6Ae2I07elUj0fVP3F6Q19CUtQWsKT/ky8tI8T/Dz\r\nuqTvZ1NEsNUAG3kpE+vGthJrLB45dk8k7pXd0mjufEq4ywUAlG6FGU+ntSnR\r\nBYMRNu5PAx0z3QE2ZiS/Al/U16MUTvxKw1aQee+j2++u9PswyU3Q3RnTmGR7\r\nsjefXVwf1E9gIUIQyEqfN3a8pTiLjDuBQjM=\r\n=xQuz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"answershuto","email":"answershuto@gmail.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"chenjun1011","email":"chenjun1011@gmail.com"},{"name":"answershuto","email":"answershuto@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.4.2_1661396467343_0.43611142085109056"},"_hasShrinkwrap":false},"1.4.3":{"name":"rax-recyclerview","version":"1.4.3","description":"RecyclerView component for Rax.","license":"BSD-3-Clause","main":"lib/index.js","module":"es/index.js","types":"lib/index.d.ts","miniprogram":".","miniappConfig":{"main":"lib/miniapp/index","main:wechat":"lib/miniapp-wechat/index","main:bytedance":"lib/bytedance-microapp/index","main:quickapp":"lib/quickapp/index","subComponents":{"Header":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}},"Cell":{"tagNameMap":"view","tagNameMap:quickapp":"list-item","attributes":{"style":"display:flex;flex-direction:column;align-content:flex-start;flex-shrink:0;box-sizing:border-box;border:0 solid black"}}},"propsMap":{"onEndReachedThreshold":"endReachedThreshold"}},"scripts":{"build":"../../node_modules/.bin/build-scripts build --config ../../build.json --skip-demo","start":"../../node_modules/.bin/build-scripts start --config ../../build.json","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"dependencies":{"prop-types":"^15.7.2","rax-children":"^1.0.0","rax-find-dom-node":"^1.0.0","rax-refreshcontrol":"^1.0.0","rax-scrollview":"^3.3.3","rax-view":"^2.0.0","universal-env":"^3.0.0"},"peerDependencies":{"rax":"^1.0.0"},"devDependencies":{"rax-test-renderer":"^1.0.0","@types/ali-app":"^1.0.0","@types/jest":"^24.0.12","@types/rax":"^1.0.0","@typescript-eslint/eslint-plugin":"^1.7.0","@typescript-eslint/parser":"^1.7.0","babel-eslint":"^10.0.3","csstype":"^2.6.4","driver-dom":"^1.0.0","driver-universal":"^1.0.0","driver-weex":"^1.0.0","eslint":"^5.16.0","eslint-config-rax":"^0.0.0","rax-picture":"^1.0.1","rax-slider":"^1.1.0-0","rax-tab-panel":"^1.0.1","rax-text":"^2.0.0","typescript":"^3.5.3","universal-transition":"^1.0.0"},"_id":"rax-recyclerview@1.4.3","_nodeVersion":"16.16.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-GF6nXQobC/ofJ5NvGyi5LExX494LM2pUa0CnjxHkoU/6LmnsOGq+HDS2ytVj4QNJ/o/1+MmGTgDN2mdn5wkGrg==","shasum":"b044edb25bf881de7dddffbddeb9a2afb0a25dd3","tarball":"https://registry.npmjs.org/rax-recyclerview/-/rax-recyclerview-1.4.3.tgz","fileCount":99,"unpackedSize":263745,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDizLpFzLH4MWXLCbiKMJIMJZlOo885/zGwvSvtUUPoUgIgDp+t9c23zwRncenCOngAyS12GxS5CrzV2KDGG+fcNhA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMQ+7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQqBAAiQctHYubCiuDNMBy23dIrofuO1AS5W9Xi1YNCThtHerBfeAR\r\nVOhnlb6In7OvcdUISxea0VIPN2QPw4bvYCK6BEsVlBGRrqfpo3f8KmEtwmY0\r\nwrN0B2a+IWI6Ih4CgDxgYXJyoeMlHC9sbKZP5tJYUK5dyQQs0GEWtBxtvQLg\r\n0MfHA2wM3erDI06hcKLkQNblExRaDx9wVkMG2J/CwT4GSU7vvnNlsuBrwgB6\r\nyF+enUXBXKu7QqVs6/DaomQ52DmXSjnnT6hGnTDAtuKaMFReG7d99rB8dsKv\r\nbYsSgee1OnAZowAMoPFxW6c2DkIjLuvPm3+eiojkgcLizpZaZVzhPq2//6TF\r\nWi4erPApQx3viNYHEB8z3DPMa2NlMsqXLCB6TcAVUhtNEOlGG3NTBgEq2+sC\r\n9w6feo8t6azsd+R1O1oAffIaosqz6rhOVrwlS6v5YQIeVvuMLtE2thGDn8UB\r\nNpAjdsAMyGt5zpvMVqT7sk+VCyp48psGMfOtUbqR19j/5uoa4jo9JfJCcVgk\r\nBBrtuO3QID+7x6qQGrFEhjvZ0sekGypOoWJv3CU+ZWgwj2qXHzC0L/rzr6d4\r\nLlx0if/q7u4YPjNrbuXoznsHw+zuDacNeY6S/rrPRTmX5l+8jaQO4Fu1iHmr\r\npS4PIKtf+0vsg3/5VjbxOat9cQmSvi5P5Ds=\r\n=RKmJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"answershuto","email":"answershuto@gmail.com"},"directories":{},"maintainers":[{"name":"zeroling","email":"wssgcg1213@qq.com"},{"name":"wintercn","email":"csf178@gmail.com"},{"name":"yuanyan","email":"yuanyan.cao@gmail.com"},{"name":"chenjun1011","email":"chenjun1011@gmail.com"},{"name":"answershuto","email":"answershuto@gmail.com"},{"name":"boiawang","email":"zhengwang2314@gmail.com"},{"name":"balloonzzq","email":"zqzhuang888@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"recover758126","email":"761647716@qq.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/rax-recyclerview_1.4.3_1664159674806_0.5351851681740836"},"_hasShrinkwrap":false}},"readme":"# rax-recyclerview\n\n[![npm](https://img.shields.io/npm/v/rax-recyclerview.svg)](https://www.npmjs.com/package/rax-recyclerview)\n\n## 描述\n\n`ScrollView` 的同门师兄，在 Weex 下是对 `list` 与 `cell` 的包装，其具有复用内部组件来提供性能的机制。\n\n![](https://gw.alicdn.com/tfs/TB1Cf_ZRVXXXXa8XVXXXXXXXXXX-255-265.gif)\n\n## 安装\n\n```bash\nnpm install rax-recyclerview --save\n```\n\n\n\n## 属性\n\n| 属性                  | 类型              | 默认值 | 必填 | 描述                                            | 支持                                                         |\n| --------------------- | ----------------- | ------ | ---- | ----------------------------------------------- | ------------------------------------------------------------ |\n| onEndReachedThreshold | `number`          | 500    | ✘    | 设置加载更多的偏移                              | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onEndReached          | `function`        | -      | ✘    | 滚动区域还剩`onEndReachedThreshold`的长度时触发 | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| onScroll              | `function`        | -      | ✘    | 滚动时触发的事件，返回当前滚动的水平垂直距离    | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" />  <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"wechatMiniprogram\" src=\"https://img.alicdn.com/tfs/TB1slcYdxv1gK0jSZFFXXb0sXXa-200-200.svg\" width=\"25px\" height=\"25px\"><img alt=\"bytedanceMicroApp\" src=\"https://gw.alicdn.com/tfs/TB1jFtVzO_1gK0jSZFqXXcpaXXa-200-200.svg\" width=\"25px\" height=\"25px\"> |\n| itemSize              | `function/number` | -      | ✘    | 返回每个 cell 的高度(节点回收时需要)            | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| totalSize             | `number`          | -      | ✘    | 当前列表总高度(在 cell 高度可变的列表中需要传)  | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> |\n| onTouchStart                      | `function` | -          | false    | touchStart触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchMove                      | `function` | -          | false    | touchMove触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchEnd                     | `function` | -          | false    | touchEnd触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"weex\" src=\"https://gw.alicdn.com/tfs/TB1jM0ebMaH3KVjSZFjXXcFWpXa-200-200.svg\" width=\"25px\" height=\"25px\" /><img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| onTouchCancel                    | `function` | -          | false    | touchCancel触发的事件，返回触摸点数据（touches、changedTouches）                      | <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />  |\n| disableScroll                  | `boolean`  | -          | false    | 是否禁止滚动，是否禁止滚动, rax-recyclerview@1.3.4 及以上版本支                             | <img alt=\"browser\" src=\"https://gw.alicdn.com/tfs/TB1uYFobGSs3KVjSZPiXXcsiVXa-200-200.svg\" width=\"25px\" height=\"25px\" /> <img alt=\"miniApp\" src=\"https://gw.alicdn.com/tfs/TB1bBpmbRCw3KVjSZFuXXcAOpXa-200-200.svg\" width=\"25px\" height=\"25px\" />      |\n\n## 方法\n### scrollTo({x:number,y:number})\n\n#### 参数\n\n参数为 `object`，包含以下属性\n\n| **属性** | **类型** | **默认值** | **必填** | **描述**     |\n| -------- | -------- | ---------- | -------- | ------------ |\n| x        | `number` | -          | ✘        | 横向的偏移量 |\n| y        | `number` | -          | ✘        | 纵向的偏移量 |\n\n### scrollIntoView({id: string, animated?: boolean, duration?: number})\n\n支持 Weex 2.0 和未指定 itemSize 时的 Web 场景。\n\n#### 参数\n\n**参数为 `object`，包含以下属性**\n\n| **属性** | **类型**  | **默认值** | **必填** | **描述** |\n| -------- | --------- | ---------- | -------- | -------- |\n| id       | `string`  | -          | 是       | 需要滚动到的元素 `id` |\n| animated | `boolean` | `true`     | 否       | 在设置滚动条位置时使用动画过渡 |\n| duration | `number`  | 400        | 否       | 当 `animated` 设置为 `true` 时，可以设置 duration 来控制动画的执行时间，单位 `ms` |\n| offsetX  | `number`  | -     | 否       | 滚动的额外 X 偏移 |\n| offsetY  | `number`  | -     | 否       | 滚动的额外 Y 偏移 |\n\n### 示例\n\n```jsx\nimport { createElement, Component, render } from \"rax\";\n\nimport View from \"rax-view\";\n\nimport Text from \"rax-text\";\n\nimport DriverUniversal from \"driver-universal\";\n\nimport RecyclerView from \"rax-recyclerview\";\n\nclass Thumb extends Component {\n  shouldComponentUpdate(nextProps, nextState) {\n    return false;\n  }\n\n  render() {\n    return (\n      <RecyclerView.Cell>\n        <View style={styles.button}>\n          <View style={styles.box} />\n        </View>\n      </RecyclerView.Cell>\n    );\n  }\n}\n\nclass Row extends Component {\n  handleClick = e => {\n    this.props.onClick(this.props.data);\n  };\n\n  render() {\n    return (\n      <View onClick={this.handleClick}>\n        <View style={styles.row}>\n          <Text style={styles.text}>\n            {this.props.data.text + \" (\" + this.props.data.clicks + \" clicks)\"}\n          </Text>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst THUMBS = [];\n\nfor (let i = 0; i < 20; i++) THUMBS.push(i);\n\nconst createThumbRow = (val, i) => <Thumb key={i} />;\n\nclass App extends Component {\n  state = {\n    horizontalScrollViewEventLog: false,\n    scrollViewEventLog: false\n  };\n\n  render() {\n    return (\n      <View style={styles.root}>\n        <View style={styles.container}>\n          <RecyclerView\n            ref={scrollView => {\n              this.scrollView = scrollView;\n            }}\n            style={{\n              height: 500\n            }}\n            onEndReached={() => alert(\"reach end\")}\n          >\n            <RecyclerView.Header style={styles.sticky}>\n              <Text>Sticky view is not header</Text>​{\" \"}\n            </RecyclerView.Header>\n            <RecyclerView.Header>\n              <View style={styles.sticky}>\n                <Text>Sticky view must in header root</Text>\n              </View>\n            </RecyclerView.Header>\n            {THUMBS.map(createThumbRow)}\n          </RecyclerView>\n          <View\n            style={styles.button}\n            onClick={() => this.scrollView.scrollTo({ y: 0 })}\n          >\n            <Text>Scroll to top</Text>\n          </View>\n          <View style={styles.eventLogBox}>\n            <Text>{this.state.scrollViewEventLog ? \"onEndReached\" : \"\"}</Text>\n          </View>\n        </View>\n      </View>\n    );\n  }\n}\n\nconst styles = {\n  root: {\n    width: 750,\n    paddingTop: 20\n  },\n\n  sticky: {\n    position: \"sticky\",\n    width: 750,\n    backgroundColor: \"#cccccc\"\n  },\n\n  container: {\n    padding: 20,\n    borderStyle: \"solid\",\n    borderColor: \"#dddddd\",\n    borderWidth: 1,\n    marginLeft: 20,\n    height: 1000,\n    marginRight: 20,\n    marginBottom: 10\n  },\n\n  button: {\n    margin: 7,\n    padding: 5,\n    alignItems: \"center\",\n    backgroundColor: \"#eaeaea\",\n    borderRadius: 3\n  },\n\n  box: {\n    width: 64,\n    height: 64\n  },\n\n  eventLogBox: {\n    padding: 10,\n    margin: 10,\n    height: 80,\n    borderWidth: 1,\n    borderColor: \"#f0f0f0\",\n    backgroundColor: \"#f9f9f9\"\n  },\n\n  row: {\n    borderColor: \"grey\",\n    borderWidth: 1,\n    padding: 20,\n    margin: 5\n  },\n\n  text: {\n    alignSelf: \"center\",\n    color: \"black\"\n  },\n\n  refreshView: {\n    height: 80,\n    width: 750,\n    justifyContent: \"center\",\n    alignItems: \"center\"\n  },\n\n  refreshArrow: {\n    fontSize: 30,\n    color: \"#45b5f0\"\n  }\n};\n\nrender(<App />, document.body, { driver: DriverUniversal });\n\n```\n\n\n","maintainers":[{"email":"wssgcg1213@qq.com","name":"zeroling"},{"email":"rax-public@alibaba-inc.com","name":"rax-publisher"}],"time":{"modified":"2023-01-11T08:04:37.403Z","created":"2017-03-01T09:58:13.871Z","0.2.0":"2017-03-01T09:58:13.871Z","0.2.1":"2017-03-02T10:03:40.974Z","0.2.2":"2017-03-03T06:35:30.336Z","0.2.3":"2017-03-08T09:53:08.339Z","0.2.4":"2017-03-16T07:07:04.363Z","0.2.5":"2017-03-16T07:38:44.734Z","0.2.6":"2017-03-24T16:11:24.327Z","0.2.7":"2017-03-25T03:10:12.639Z","0.2.8":"2017-03-25T15:44:43.917Z","0.2.9":"2017-03-27T08:45:16.521Z","0.2.10":"2017-03-30T02:13:02.925Z","0.2.11":"2017-03-30T03:22:36.595Z","0.2.12":"2017-04-10T08:26:32.372Z","0.2.13":"2017-04-14T06:43:05.553Z","0.3.0":"2017-04-24T04:10:08.100Z","0.3.1":"2017-04-24T07:33:45.920Z","0.3.2":"2017-04-26T03:41:34.882Z","0.3.3":"2017-05-12T06:24:26.268Z","0.3.4":"2017-05-19T09:40:01.669Z","0.3.5":"2017-05-23T02:50:17.089Z","0.3.6":"2017-06-01T08:27:04.531Z","0.3.7":"2017-06-15T09:57:21.382Z","0.3.8":"2017-06-21T01:41:39.990Z","0.4.0":"2017-06-27T01:44:39.679Z","0.4.1":"2017-06-27T06:10:56.334Z","0.4.2":"2017-06-28T05:38:50.843Z","0.4.3":"2017-07-06T07:17:08.956Z","0.4.4":"2017-07-14T08:37:02.984Z","0.4.5":"2017-07-21T05:51:10.743Z","0.4.6":"2017-07-24T06:35:35.921Z","0.4.7":"2017-07-24T08:26:19.580Z","0.4.8":"2017-07-27T09:42:35.869Z","0.4.9":"2017-08-02T09:40:58.543Z","0.4.10":"2017-08-11T05:14:06.909Z","0.4.11":"2017-08-23T04:03:33.168Z","0.4.12":"2017-09-08T07:04:05.166Z","0.4.13":"2017-09-15T02:27:07.487Z","0.4.14":"2017-09-21T10:16:26.325Z","0.5.0-beta":"2017-09-25T10:17:35.605Z","0.4.15":"2017-09-26T06:25:53.820Z","0.4.16":"2017-09-28T08:06:55.259Z","0.4.17":"2017-10-11T05:31:50.088Z","0.4.18":"2017-10-16T07:06:03.145Z","0.4.19":"2017-10-17T07:36:40.057Z","0.4.20":"2017-10-18T07:47:43.828Z","0.5.0":"2017-12-13T04:54:03.438Z","0.5.1":"2018-01-25T11:44:58.720Z","0.5.2":"2018-01-30T09:01:23.331Z","0.5.4":"2018-03-02T03:30:07.042Z","0.6.0":"2018-04-10T03:42:43.074Z","0.6.2":"2018-05-08T07:36:03.261Z","0.6.3":"2018-05-08T14:58:34.756Z","0.6.4":"2018-06-07T06:47:23.188Z","0.6.5":"2018-08-23T08:50:40.614Z","1.0.0-beta.0":"2019-04-09T07:19:26.480Z","1.0.0-beta.1":"2019-06-20T11:09:07.595Z","1.0.0-beta.2":"2019-07-18T07:18:48.947Z","1.0.0":"2019-07-29T10:01:04.852Z","1.1.0-beta.0":"2019-08-08T05:33:51.515Z","1.1.0-beta.1":"2019-08-09T03:33:09.809Z","1.1.0-beta.2":"2019-08-12T08:54:37.275Z","1.0.1":"2019-08-26T10:53:27.625Z","1.0.2":"2019-08-30T11:24:46.134Z","1.1.0-0":"2019-09-10T08:54:24.254Z","1.1.0-1":"2019-09-12T03:18:17.818Z","1.1.0-2":"2019-09-12T10:35:47.795Z","1.1.0-3":"2019-09-12T10:41:33.212Z","1.1.0-4":"2019-09-13T10:02:17.458Z","1.1.0-5":"2019-09-16T15:51:30.473Z","1.1.1":"2019-09-26T12:41:18.795Z","1.1.2-0":"2019-11-22T09:50:27.462Z","1.1.2-1":"2019-11-25T06:08:22.502Z","1.1.2":"2019-12-13T08:21:17.546Z","1.1.3":"2019-12-16T03:26:42.146Z","1.2.0":"2020-04-07T07:53:58.280Z","1.2.1":"2020-05-14T02:36:07.250Z","1.3.0":"2020-05-25T06:41:52.138Z","1.3.1-0":"2020-08-04T02:39:38.780Z","1.3.1":"2020-08-04T06:20:16.151Z","1.3.2":"2020-08-31T07:53:32.924Z","1.3.3":"2020-09-14T04:11:46.830Z","1.3.4":"2020-09-28T06:11:02.683Z","1.3.5":"2020-10-14T05:58:08.246Z","1.3.6":"2021-06-28T07:21:40.392Z","2.0.0-beta.0":"2021-08-06T07:48:21.103Z","2.0.0-beta.1":"2021-08-10T03:57:21.291Z","2.0.0-2":"2021-08-26T08:38:21.034Z","2.0.0-3":"2021-09-16T03:06:01.293Z","2.0.0-4":"2021-09-18T03:48:36.372Z","2.0.0-5":"2021-10-27T08:01:41.793Z","2.0.0-6":"2021-12-08T08:00:07.737Z","2.0.0-7":"2021-12-08T08:15:24.044Z","2.0.0-8":"2021-12-08T09:40:23.461Z","2.0.0-9":"2022-02-24T03:56:48.999Z","2.0.0-10":"2022-02-24T06:40:18.334Z","2.0.0-11":"2022-03-03T12:33:07.147Z","2.0.0-12":"2022-03-03T12:38:02.961Z","1.4.0":"2022-06-27T06:37:24.526Z","1.4.2-beta.0":"2022-07-21T09:57:54.373Z","1.4.1":"2022-07-25T04:10:14.740Z","1.4.2":"2022-08-25T03:01:07.513Z","1.4.3":"2022-09-26T02:34:35.026Z"},"homepage":"https://github.com/raxjs/rax-components#readme","keywords":["Rax","rax-component","react-component"],"repository":{"type":"git","url":"git+https://github.com/raxjs/rax-components.git"},"bugs":{"url":"https://github.com/raxjs/rax-components/issues"},"license":"BSD-3-Clause","readmeFilename":"README.md"}