{"_id":"@alitajs/access-layout","_rev":"14-3f9d4528f4092a6fb65d773cba333280","name":"@alitajs/access-layout","dist-tags":{"latest":"2.5.20","next":"2.5.17-beta.3"},"versions":{"2.5.9":{"name":"@alitajs/access-layout","version":"2.5.9","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"_id":"@alitajs/access-layout@2.5.9","_nodeVersion":"12.18.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-q9NqIicOs3qCGjOLeWKVA2V72xFEx8A8AoLVF65iWd1odpM2xbWjLuoiNxJ65nHzggrBkW3pUmrTiP3g3P5sEA==","shasum":"0901e0d577423f51406fef69574c58ebf81e700a","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.9.tgz","fileCount":17,"unpackedSize":37251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOljUCRA9TVsSAnZWagAAx+wQAJeZ8pr3Je91C4x3hBb3\na3Fv9HtTJZ0bm2yYdF5Wru9jdYzN46QHt/1mTjCAPO+fJ2zTeGNmD2P3eCmV\n8mlTrXjiimohshVGo/gtlEUjz8SuC0QGWbUzjEjnvHt6qzNAUz8DpLE7Ouhb\nSpx8/v5Bv24r5tt2cAS4fKqLRgwKgaoGiXkNBueimCCzA/iyYAAPcGzpZPxs\n72uYmWdSKNTTaEhtZEAaph7osRQhiaNb9g2C4RvM8m2cT0SmVkTd9aV8l6le\nVXa92Nuy4IYsX/CUaexKomNUdfUajBqRI/2C8nf+e+09vKJ1O7qSk9rNmz+L\ndjelrdrKztRToYHeUQ2nr4PNwos0aOLg47ehWGDU7xkZ45+2EZ/XpycHwZQG\nDx/rRyVBNXrTpAjHNzz/czG79nZ/v4mw8w9IdNzVX76zY3TWVNvO4ef4pTQY\nMO1DEJE7Us7Kjr/e/KUQDnmygfqv1sIjvUyPSmZF4HSexjWtXucMOYESTflB\nRCAtRm8wTkZpDD3ubW33f6LLSbl+gX0FYcYHTrhZIz1oXxCHHGNFDEim2qYs\nJdfbiTpj5mo7+ODRg9AlATY1JERTKNgbQGsi15m3U8V5t+Ytyw0uXAhxH4YO\n+51YjHNckHluvOugYW8rC6Eyio9znZ2/MesFPEmSTJhiFvC2spNY9CIVZAP3\nYYp8\r\n=3Z3o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDFJyXZ+0ftCQrH9kZE6dG+4uWY8eQDSWzcPV3y8gLkdAiEA0hXJZkOdqnPMxvFJCeSU3D0uShjORi2AO5ahha11QFA="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.9_1597659348263_0.36746661166530337"},"_hasShrinkwrap":false},"2.5.10":{"name":"@alitajs/access-layout","version":"2.5.10","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"_id":"@alitajs/access-layout@2.5.10","_nodeVersion":"12.18.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-7AibsGF94AakHAU5FklDzqWPvsvFoOyE22sEqKfFpMWcpPKfUh47IBc4YSVlYgneTtnKaFHJdPVmQkzchM8Eug==","shasum":"38a07feedf44daee76e5062b8940f6e513a6d2b6","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.10.tgz","fileCount":17,"unpackedSize":37252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOl/pCRA9TVsSAnZWagAAddYP/3VWyFRj+FG7Y90EDFlL\nB7hyr/1qt3IhpHn0M8JXzQ7JpoHgQbLDid2vGXwEh7OSHaOxL08oNyxMkxd7\nyILyQZCUAxjJnPcmovVGUZdEOKzRK+1x966kWfhZCIBpwxehQ54y+wImzmJC\n/TaFZRLwttQIlmpKR1mjKJhNlzSNpYYGMESLDHqvQHoNhLMPnDhfAAEVhz3l\nBNw/wF9DIBluOJvMTU2KK705ydXOECFQAuCfWbAWfYxKgk1LjGYW3dcJfgkl\n+1JKJEMxzXnMnX8+VOAwK+vc04xJImxGYtoSVO3/ycP5+SRDTkTZmFKhupWp\nwoxqU2lDwyju9Tk14pYlPyrngMw7DxSU5ORUxqmHBUgSaptjDEmjLAsXGc/1\ntAFnaMepwWGqE+mkWBd6ed713MpjvJU7+Ip9gmoD4y9AAGKvC/6I75Iib3rR\nyfrhhU9eUM52k2JRheM3YmQyJalmvgk+Dqj+JnrUJ3KkF20gphAenk4+3Ove\nHoOEkxZIKoQJYmmsxZ2O9TiTGTwV8kjfeLnMlxfWezFlQTWRNS695D2+UtNF\nA9DurLXe5mr31Wb3DYx+rtLKgglfRQoTEfWxwNYM7sARHvLca1UKA/iyVl7w\nbqy4T2Qanb+d5G/YF0bDZEBqh72jf34AOVG5CvXWAu/tLPgua/cxQUhLoX7B\n3M8H\r\n=FU2U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGko1v9B2UIcujDMcPd2c052P0ixR0oN2Mf53rYJaTmFAiBXXFSytuEG8aM8WHHJwLYuOxfup5EIfYKY8lZrta8dLA=="}]},"maintainers":[{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"hang1017","email":"437132124@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.10_1597661161048_0.6229062933688494"},"_hasShrinkwrap":false},"2.5.12":{"name":"@alitajs/access-layout","version":"2.5.12","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"_id":"@alitajs/access-layout@2.5.12","_nodeVersion":"12.18.0","_npmVersion":"6.14.7","dist":{"integrity":"sha512-vWX5c8+nA1jUI+Q0PEc8yqAJhLxaUL9fnSjo0Fq4VxPlaLWCBNYvEId9RU2EASW5FhP1DZ9lU5mFLVjRg63/Hg==","shasum":"b16480bb5eead876c5b67b87cd7e23b1c70ac339","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.12.tgz","fileCount":17,"unpackedSize":37252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPe3xCRA9TVsSAnZWagAAonwP/igWf9CwZs1CEFHSDOc1\nNoDJ21EnE3sufjDr5jdvtkB+Sp81NRjoKDkqxc1X1LC7m0z4iLnhgqOXnytH\nKXc8YArcEqE3/BnWWomihZB3KXPC4VqZrHyb4lljonJrxtiVfmpui+zqFHsE\nX440613zySWxpmPJFCJ1VrclO8QgxuYaEtGzUEd4rQ6VRVps/11DjDSn33Mr\n5glo7TQyPc0TsJvzG4NOh8CS3lr50vqUMlvZGgQj/mjvf/4azTmaetx6fzF9\nNK5b9EmjnI1oqihYzZVN3KIIknQKtDDj7/DYla8DekrPho1n0R3un+PDggM1\nyLyq5b74zw8C/xF94xZYAp8ALqtzAsshfIypKLeuN5gWcr59zxDboairKvub\ni32ZhBCf0wTGN6YYC6P0vYJzqcdQF0QLbCOnvHKkU7EsBNm1xaPJ2//AfkpW\n5jC79FFYvmHDtrB4IaNBnSIF+KkBWX6YEpB323IeQdwx9G2AeW5PPLSnFWHl\nGWQlrtoKrzGZzbwapWJH8Ti/P6dflcxBwVzoZRrEsrvfaXcG2VeGGRhpd5SG\ni6ukXKcF6GAY7dw/GnzHXYM8O/W8KD7EGGf27tLTeAuK6lCY98N1aAr7ce5F\nHFO/QC37pwVSCSscBCu/oS5nHlMwqpa93toX+Idzt0hSN/98zt7P+PGKoXDH\n83gP\r\n=+H/Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH8ExQ6rXghVVRmYTKk4s29jiOQ5IYeGJ1g4TKiWduDIAiBWufHsxdv0DnKFFat/1MGo7AiPqfh3+MUiTsyeO/cQdQ=="}]},"maintainers":[{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"hang1017","email":"437132124@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.12_1597894129444_0.5103833882337583"},"_hasShrinkwrap":false},"2.5.13":{"name":"@alitajs/access-layout","version":"2.5.13","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"_id":"@alitajs/access-layout@2.5.13","_nodeVersion":"12.18.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-ndtst1UN3lzFgZBTTXYd0rXHihFNNp/1QLLdccZcUymH08BQnL+HbU3RVldqE4sXga/WtIrtDE0jvNrVsj6uMw==","shasum":"b606e350ddfbed95d9c3052c44fba289475d52d5","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.13.tgz","fileCount":17,"unpackedSize":37252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWH96CRA9TVsSAnZWagAAAiIP/0LeQi4OqxO6jUmbAMOP\nX3EPDHgnZwiSR9g5BTEIOieRb1zhi1SXJ0+L/4uEZ2OjU0b/PFXdD2/MMkmy\n6sIp3K0w/zoct2e9xvJ40AMFTT6IKardE1lhRl4oUTagJ/1zj52ICYZ93Uha\nsanI0occTl7ZspqZIF/dVRPPSwa6DjecBeoDYK/KihSJulOeETTyiHagrejA\nAFce4pX8VEFtfNk0A17bQs/4bjKVVvHrO9njpBkbX+Vc/OfgSWs4YQLVVWnV\n3ITWqWQ2OHSA7Iu916pDFI4u+BCJUOKxhkBfwXnyWCyttY1aOBm7loAge5nV\nzGqAsEeiwb2og6hq0h6Vtv/OyUkfZoqQrUpqsSGirjF/tgj7p71xzmU/uZq+\nOz+UE476mG2F0s4gHumR8IyvxF45NXRDjDJCSn6Wxb0lJxxmBL5G2MG5vJxZ\niMH3CcgJWAhOCYsCZzRJ6Iix4ZxOOcyMjQPu+FEzvk35bGXJN1KeRIgo30kH\nPS3qhwQSag6XBDTIijf1hslLhFouGCYz+goiELyO7cmwsc1PKaC3vZdfwulY\nG5YWKLYRS5eg1wpnYpUE8b03UMJhCpwWKXZqv9wkxa/8J7H0jcvUI8b4165N\nQTbW7IGJ4ea2Aeti/B3lE6g152xWKuMy7CBVhsf35Gut9GDaAEQvrx1kQ5Qo\nR6IU\r\n=MAbJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGmEcKBaeqbQSuU5inh2pyPlnYsCYVuqjX0l1qPyV7bOAiArKrU00tr1Er4vsL/xJy8K0kmMEaHZUAeqSzIUfr6uCQ=="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.13_1599635322091_0.5819179704247928"},"_hasShrinkwrap":false},"2.5.14":{"name":"@alitajs/access-layout","version":"2.5.14","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"_id":"@alitajs/access-layout@2.5.14","_nodeVersion":"12.18.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-A183mnL1todIfCj9kv4i3sPjMCPAOct95s50r/EKlw4c5A2UPCmud40JTMuGBbxYDD3nQ7DEksuFx49Qk7wk1Q==","shasum":"631e8f2484d98d37c185826abd913fbee134ca2a","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.14.tgz","fileCount":17,"unpackedSize":37252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYIfACRA9TVsSAnZWagAAFqsP+QAw/CK7DjlQDLgPgkna\nZIY6fRZ2nLqpiyaEFTivYGazEO9E9AK63vfIpWOV8is2w4EyaPrhrfS0VgAa\n+HPUd2d7thw5TB3GnE2nVnWGHekeztj2NC0pgrQfBuch6c0g5k6Ok2eymfal\n4kBpB8BvYxZ6E1hq+r+CEd4qffIx6poLZYtInNo08bGq5Ti8WH7EiB5LSJne\nhDWwHD5lumi/UXWgjNsSc1dK1arLZBLnrgn+T6qEoCv53/0h1IFFPHJUkAUK\n6AIPu62niuYxCsLvAe3A58EruxaFRabxRgp/ES5imq1PuQyrAAdGoySZeTIA\nOLbsEjSzQpDQCE5n7z6ksMKbOIMRYnWxcOpOcE+7j+23IedAhKNCw06fCPHx\nqD7+3ADfHglLt+A4xhUu0nvCeLIphZfmTRUGKBUfFaO8vdkKSYRbWyi/CjXW\nvQsPXAhErfIeAzhJ/wL5n6VwKmse1wKsEU1y7okFjQlvLetL28nHWZSQ12Mi\nNTL+ye7rC+kvV2Hx6SIPzU6x0r4XZAROxG+5M14JGWJtrFLjmcVuETBM9T1w\nrRTwXdzoPC2jaYnajeO1IX8ZW/rtpq8CKH1msC3HVcsRYwF310sBcO//9n+6\nXuJbNh31HHH4a5EmKvtZQGpJBj7r08tuFdfScv1T53l8kDqWFb/mGcMQTwP4\nnw5x\r\n=QRP+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHbWUKgeibPdz/rBqRMHM4sfADXE8Oe/0mYVVObncUrvAiEAk5bKfA2dlCnacZKOCsmTC9ZbawXLAm/UMZI6Au599/A="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.14_1600161728460_0.5058770804573467"},"_hasShrinkwrap":false},"2.5.16-beta.0":{"name":"@alitajs/access-layout","version":"2.5.16-beta.0","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"readme":"# @umijs/plugin-access-layout\n\n## 使用\n\n使用 npm:\n\n```bash\n$ npm install --save-dev @umijs/plugin-access-layout\n```\n\n或者使用 yarn:\n\n```bash\n$ yarn add @umijs/plugin-access-layout --dev\n```\n\n## 说明\n\n这个插件将 plugin-access 和 plugin-layout 插件的功能整合在一起，为了支持 Umi 的约定式用法，还有更多的动态设置方案。\n\n## 特性\n\n1、支持约定式和配置式 2、动态修改权限 3、动态使用菜单 4、支持运行时配置 Pro-Layout 5、支持页面级别配置 Pro-Layout 6、支持页面级权限 7、支持页面级修改权限 8、支持不使用 Pro-layout 9、兼容 Pro 旧项目的写法\n\n## 搭配其他插件\n\n1、配套 plugin-locale 使用，会默认开始国际化的菜单 2、配合 plugin-model 使用，可以使用 useModel('@@accessLayout') 3、配合 plugin-initial-state 使用，可以不指定权限判断数据\n\n## Config 配置\n\n```ts\naccessLayout: {\n  iconNames: ['smile'], // 约定式用法，需要将所有用到的 icon 名称写全，为了按需加载\n  useModel: true, // 声明是否搭配了 plugin-model 使用\n}\n```\n\n## 运行时配置\n\n```ts\nexport const accessLayout = {\n  title: 'Runtime Demo',\n  // Pro-Layout 支持的所有配置\n};\n```\n\n## 页面级配置\n\n```ts\nuseEffect(() => {\n  setLayoutConfig({\n    title: 'PageSetDemo',\n    // Pro-Layout 支持的所有配置\n  });\n}, []);\n```\n\n## 页面级别权限控制\n\n```ts\nimport { useModel } from 'umi';\nconst { access } = useModel('@@accessLayout');\nif (access.canAdmin) {\n  // canAdmin 在src/access 中定义\n  // 或者使用 setAccess 设置\n  console.log('access.canAdmin');\n}\n```\n\n## 页面级修改权限\n\n```tsx\nimport { useModel } from 'umi';\n\nconst IndexPage: FC<PageProps> = ({ index, dispatch }) => {\n  const { setAccess } = useModel('@@accessLayout');\n  return (\n    <div\n      className={styles.center}\n      onClick={() => setAccess({ canAdmin: false })}\n    >\n      点击操作权限\n    </div>\n  );\n};\n```\n\n## 扩展菜单配置\n\n可以指定部分页面不使用 layout\n\n```ts\nconst menuData = [\n  {\n    path: '/login',\n    hideLayout: true,\n  },\n];\n```\n\n## 支持约定式路由用法\n\n```ts\n// src/layouts/index\nimport { AccessLayout } from 'umi';\n\nconst BasicLayout = props => {\n  // 这个数据可以是任意来源的，你可以在登录之后再去获取菜单数据\n  const serveMenuData = [\n    {\n      path: '/',\n      name: 'index',\n      icon: 'smile',\n    },\n    {\n      path: '/ListTableList',\n      name: 'list',\n      icon: 'heart',\n      access: 'canAdmin',\n    },\n    {\n      path: '/login',\n      hideLayout: true,\n    },\n  ];\n  // 这个数据会传递给 src/access.ts\n  // 搭配 plugin-initial-state 使用的话，这个可以不传\n  const initState = {\n    currentUser: {\n      access: 'admin',\n    },\n  };\n  return (\n    <AccessLayout\n      initState={initState}\n      menuData={serveMenuData}\n      {...props}\n    ></AccessLayout>\n  );\n};\n\nexport default BasicLayout;\n```\n","readmeFilename":"README.md","_id":"@alitajs/access-layout@2.5.16-beta.0","_nodeVersion":"12.18.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-vT+UyuSNrQL9gO3OgT/qQXzx/Z1GRTF3F4BCtJKHhFP9FE++uSIcvHqoaDdIMZmzxdq8n57jvXKeJrxOXIhYBA==","shasum":"37a3c1f03752e7efeb5e4964a6285b0e346ae2a6","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.16-beta.0.tgz","fileCount":17,"unpackedSize":37259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfh/11CRA9TVsSAnZWagAAysEP/2RQ2MTr9pLXIZVsRDCr\nDO+TYcb1z7MAs/W92l88/0pTqaVOLYf1clbzyt2DZOKYv20TbrtW/7yPTWoW\nGRvFi3mYnO7E0G2zYqJW7NBQkxdgz1reQhT3oiXEroZvFbvAsy6j0imyPOZS\n95VumEUm6RIK9U7Y2M0c7w+XgjqBKG1azSvtgYGWl97hdEf6I/ikYBPbpcqw\nLyuyZtYwacS9SRVt/RJ9LDHK/IqP52exJiseDavpMpkknb2z8arq3kd/14Zk\nkoZMRnzRgRmIeQ0l9hhEIV1TJJ+HIH6Zukn9aD4zS+YpFOFgwuql4rAGnkSi\n+uxJcID0wXePbgr7P00eQ2oOL66p6DW8Yeo8pptA1BIgo9ODyz7Lr/JZ17q3\nABjeS9P5Y/rvbHoBUmleNl7iX8R6LTxDCmuFWIeuB6egbDtsf21HM/8WaB34\nPIdnijsSZjVywuVt9Zt+uXIIkRNptHvOpjV7uUWbgu8hXqbyTMaS0zOXfNeL\n5i44wcqpVvFvFBDagpScwWAzdNeftM9Z4a+t1gwgmidyaaQw0hds1vIvQZ22\nwarzIW3g9Ya2/59xy5avUg+qzbbs3pYTUpMoM7UkGY+ZhvkmDpZt0AwFbP6H\n6+Xb85O8ceg7cHwFiywb5oT6AQ+SaDuGkGCiZ5kK2mjmrI03voP1hwJTHSSV\nhJ7F\r\n=s4Ir\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDEMf0bztjesNaxxRH5/nomJCZ5lR4gOlGgYTNOLLk9CAiEAudOZpsFdyvSL1bjHyRVLZAn7YH46HmMqtxDUY2oWyCs="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.16-beta.0_1602747765178_0.648621762582823"},"_hasShrinkwrap":false},"2.5.16-beta.1":{"name":"@alitajs/access-layout","version":"2.5.16-beta.1","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"readme":"# @umijs/plugin-access-layout\n\n## 使用\n\n使用 npm:\n\n```bash\n$ npm install --save-dev @umijs/plugin-access-layout\n```\n\n或者使用 yarn:\n\n```bash\n$ yarn add @umijs/plugin-access-layout --dev\n```\n\n## 说明\n\n这个插件将 plugin-access 和 plugin-layout 插件的功能整合在一起，为了支持 Umi 的约定式用法，还有更多的动态设置方案。\n\n## 特性\n\n1、支持约定式和配置式 2、动态修改权限 3、动态使用菜单 4、支持运行时配置 Pro-Layout 5、支持页面级别配置 Pro-Layout 6、支持页面级权限 7、支持页面级修改权限 8、支持不使用 Pro-layout 9、兼容 Pro 旧项目的写法\n\n## 搭配其他插件\n\n1、配套 plugin-locale 使用，会默认开始国际化的菜单 2、配合 plugin-model 使用，可以使用 useModel('@@accessLayout') 3、配合 plugin-initial-state 使用，可以不指定权限判断数据\n\n## Config 配置\n\n```ts\naccessLayout: {\n  iconNames: ['smile'], // 约定式用法，需要将所有用到的 icon 名称写全，为了按需加载\n  useModel: true, // 声明是否搭配了 plugin-model 使用\n}\n```\n\n## 运行时配置\n\n```ts\nexport const accessLayout = {\n  title: 'Runtime Demo',\n  // Pro-Layout 支持的所有配置\n};\n```\n\n## 页面级配置\n\n```ts\nuseEffect(() => {\n  setLayoutConfig({\n    title: 'PageSetDemo',\n    // Pro-Layout 支持的所有配置\n  });\n}, []);\n```\n\n## 页面级别权限控制\n\n```ts\nimport { useModel } from 'umi';\nconst { access } = useModel('@@accessLayout');\nif (access.canAdmin) {\n  // canAdmin 在src/access 中定义\n  // 或者使用 setAccess 设置\n  console.log('access.canAdmin');\n}\n```\n\n## 页面级修改权限\n\n```tsx\nimport { useModel } from 'umi';\n\nconst IndexPage: FC<PageProps> = ({ index, dispatch }) => {\n  const { setAccess } = useModel('@@accessLayout');\n  return (\n    <div\n      className={styles.center}\n      onClick={() => setAccess({ canAdmin: false })}\n    >\n      点击操作权限\n    </div>\n  );\n};\n```\n\n## 扩展菜单配置\n\n可以指定部分页面不使用 layout\n\n```ts\nconst menuData = [\n  {\n    path: '/login',\n    hideLayout: true,\n  },\n];\n```\n\n## 支持约定式路由用法\n\n```ts\n// src/layouts/index\nimport { AccessLayout } from 'umi';\n\nconst BasicLayout = props => {\n  // 这个数据可以是任意来源的，你可以在登录之后再去获取菜单数据\n  const serveMenuData = [\n    {\n      path: '/',\n      name: 'index',\n      icon: 'smile',\n    },\n    {\n      path: '/ListTableList',\n      name: 'list',\n      icon: 'heart',\n      access: 'canAdmin',\n    },\n    {\n      path: '/login',\n      hideLayout: true,\n    },\n  ];\n  // 这个数据会传递给 src/access.ts\n  // 搭配 plugin-initial-state 使用的话，这个可以不传\n  const initState = {\n    currentUser: {\n      access: 'admin',\n    },\n  };\n  return (\n    <AccessLayout\n      initState={initState}\n      menuData={serveMenuData}\n      {...props}\n    ></AccessLayout>\n  );\n};\n\nexport default BasicLayout;\n```\n","readmeFilename":"README.md","_id":"@alitajs/access-layout@2.5.16-beta.1","_nodeVersion":"12.18.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-AYxOjAe8nfkhfuY/48uhYOCoriDI/07h0BBw4/23yJcEhk8sjWrkDiODm87LIkDJuxIPG60vpWFZCrhuE3UJgg==","shasum":"9d6fcb58ac32cfcab593e880c91e5331405d6cd2","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.16-beta.1.tgz","fileCount":17,"unpackedSize":37259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfiBJ4CRA9TVsSAnZWagAA0pAQAIzNFmFmf7WVXdXDpstv\nww736rIryNTDbWRCPrwQk3yZEn07XDL7toX1EkcRLv62mZm96gFHKAsuvhtg\noR+1h5cJ5uMFB1CRSTTEIfo+nZ09Z4c5s9aAEkS9AABvFXAvXOqE10WBFYyf\ns738MW4MmBfguLU3zpc+WW43XNYp9CfOEA2U9+oMvqYeY6MjpA65BSmOQ5pm\nYzzwHBNJJBtwBZHYrHkd8VDekIxHmEecTmv1BOz0noeo0BNheZwQ+Cvlq9aq\nK0wUf0GPubUCQcNf6jEYsJZ4Rid3PGDQDVP18688RBwp0akGm4stTVTT+Dnu\n+DP8L/EViCHdQV7JTAQGuy3d7HO1nh7HXUXm2TEAev9rMSkw+ESG63a3wvfW\nKff+Z6VMjrCsU80GJUkrc66maQ1o+vhScAAU6cuwE4P/kfPSC1Hrp6Uq8BfC\n1BNjFPeLwuL8hAQZ4VZ4pbeD1M9Ht92eJkR1cdOCTlu6pWTRrYGRR3SGNTCZ\nnrp6NaUT4nf/ig/XQqHmwG33uIRcc0ljdE8RQeVCG8IqJItsYaumkihtoimC\n9wvqeHcYGuajqwShtUVPaJyC2On0kyUXiA/Kq6/Jg/HMbdtHg2P151NmV0Jz\nhyPu0QvesL/d7zUVHIr7aaOGxfBfSpSzOKB/3VplNnjldM59V2yL89CY8pYR\n1ijA\r\n=XH7O\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCk7SPdJ70tCMe/DZHmib8hi+Mf9xH5oTs5fGLKJhQeIgIgXfd7f25NZREoth32xAhYnVzvN7w8XygegcEvt9rqvrc="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.16-beta.1_1602753144147_0.3707429474101247"},"_hasShrinkwrap":false},"2.5.16-beta.2":{"name":"@alitajs/access-layout","version":"2.5.16-beta.2","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"readme":"# @umijs/plugin-access-layout\n\n## 使用\n\n使用 npm:\n\n```bash\n$ npm install --save-dev @umijs/plugin-access-layout\n```\n\n或者使用 yarn:\n\n```bash\n$ yarn add @umijs/plugin-access-layout --dev\n```\n\n## 说明\n\n这个插件将 plugin-access 和 plugin-layout 插件的功能整合在一起，为了支持 Umi 的约定式用法，还有更多的动态设置方案。\n\n## 特性\n\n1、支持约定式和配置式 2、动态修改权限 3、动态使用菜单 4、支持运行时配置 Pro-Layout 5、支持页面级别配置 Pro-Layout 6、支持页面级权限 7、支持页面级修改权限 8、支持不使用 Pro-layout 9、兼容 Pro 旧项目的写法\n\n## 搭配其他插件\n\n1、配套 plugin-locale 使用，会默认开始国际化的菜单 2、配合 plugin-model 使用，可以使用 useModel('@@accessLayout') 3、配合 plugin-initial-state 使用，可以不指定权限判断数据\n\n## Config 配置\n\n```ts\naccessLayout: {\n  iconNames: ['smile'], // 约定式用法，需要将所有用到的 icon 名称写全，为了按需加载\n  useModel: true, // 声明是否搭配了 plugin-model 使用\n}\n```\n\n## 运行时配置\n\n```ts\nexport const accessLayout = {\n  title: 'Runtime Demo',\n  // Pro-Layout 支持的所有配置\n};\n```\n\n## 页面级配置\n\n```ts\nuseEffect(() => {\n  setLayoutConfig({\n    title: 'PageSetDemo',\n    // Pro-Layout 支持的所有配置\n  });\n}, []);\n```\n\n## 页面级别权限控制\n\n```ts\nimport { useModel } from 'umi';\nconst { access } = useModel('@@accessLayout');\nif (access.canAdmin) {\n  // canAdmin 在src/access 中定义\n  // 或者使用 setAccess 设置\n  console.log('access.canAdmin');\n}\n```\n\n## 页面级修改权限\n\n```tsx\nimport { useModel } from 'umi';\n\nconst IndexPage: FC<PageProps> = ({ index, dispatch }) => {\n  const { setAccess } = useModel('@@accessLayout');\n  return (\n    <div\n      className={styles.center}\n      onClick={() => setAccess({ canAdmin: false })}\n    >\n      点击操作权限\n    </div>\n  );\n};\n```\n\n## 扩展菜单配置\n\n可以指定部分页面不使用 layout\n\n```ts\nconst menuData = [\n  {\n    path: '/login',\n    hideLayout: true,\n  },\n];\n```\n\n## 支持约定式路由用法\n\n```ts\n// src/layouts/index\nimport { AccessLayout } from 'umi';\n\nconst BasicLayout = props => {\n  // 这个数据可以是任意来源的，你可以在登录之后再去获取菜单数据\n  const serveMenuData = [\n    {\n      path: '/',\n      name: 'index',\n      icon: 'smile',\n    },\n    {\n      path: '/ListTableList',\n      name: 'list',\n      icon: 'heart',\n      access: 'canAdmin',\n    },\n    {\n      path: '/login',\n      hideLayout: true,\n    },\n  ];\n  // 这个数据会传递给 src/access.ts\n  // 搭配 plugin-initial-state 使用的话，这个可以不传\n  const initState = {\n    currentUser: {\n      access: 'admin',\n    },\n  };\n  return (\n    <AccessLayout\n      initState={initState}\n      menuData={serveMenuData}\n      {...props}\n    ></AccessLayout>\n  );\n};\n\nexport default BasicLayout;\n```\n","readmeFilename":"README.md","_id":"@alitajs/access-layout@2.5.16-beta.2","_nodeVersion":"12.18.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-AgKdJC+WQ0fyAb20y11Ue1/s/aTP++223njfCiSIBipHkldNHTtHn7Tjd66Jb7VEQa4dWi7YNzpy9exOHLhwOQ==","shasum":"5b7c925665411c618b0d31ac78cdcbb5db30f1c1","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.16-beta.2.tgz","fileCount":17,"unpackedSize":37259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfiW9CCRA9TVsSAnZWagAAw5MP/05WBVbuclXca8/jS0QK\n/OWd1kz5zxO5cr9xptiRMuZuzOTSSICNpFoLckMKK2qg/SDxfY16YfFjw9Ml\nkwHWWBJ34SD5lHjoslw5aIqdeTYHfFoWH4Ki2kgtuLJ2B29H5NNN2iDbKWpO\nS12JlcS5aH/JtS80hwMAj1qriJgbHeF6IOf0Wjk/wNsTmqz4PuNLI5GXd3LQ\n7S/6sYZKOX3Rkit5D0G1+p8m1b6nS3RoYFUG/7diYlNpEgLSx3hswEDQJY9l\nu7/D1TGsjO57h2jevHusszVEUc684AWjZUAoxv12FHBgX4XJ65k5Uh7kTyAv\nkipIpBdFVhB1D4XEOoZ1gKTAWaG97tdp6x2CsCn0EZQqYFsk+AoM1gyk1MBA\nsR88/2UdH1qXBVBE2J12lsH3JOyezEqXy9v9VN7CxKyXVklbQxDi43hKzCKi\ns5WXMzK7QJLTliBEvZaQP+A/tyMdUyw2Ps1ZnfD4LLvDPedSxJDxcLMzqjaK\n685e5aiALm+dZ+PICgO5jYCdAeH68lGwo0M+KiOS6Cfw6Z/JK2dhs3vb46MN\nc+EPIfui+UNoCQPFXfDI8o8oCLTsY9NjTNomKbzrI+1v0qRbCiUhSXX6dlon\nn8kIfu//HuaFC5/xPP475grrlzlGZ7icH8B3QjQmlw9XrbRahRDpP+Amj6wv\nTbnO\r\n=ydYS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+s20fzXiUzoK6cMEJkwju8aoZK62lYx7b9EAjxNDDrwIgM4V9X2dPWHEk0D/OK5polf+IJuKYFSrl9vN2wilVAQk="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.16-beta.2_1602842433914_0.03450542614810992"},"_hasShrinkwrap":false},"2.5.17-beta.3":{"name":"@alitajs/access-layout","version":"2.5.17-beta.3","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"readme":"# @umijs/plugin-access-layout\n\n## 使用\n\n使用 npm:\n\n```bash\n$ npm install --save-dev @umijs/plugin-access-layout\n```\n\n或者使用 yarn:\n\n```bash\n$ yarn add @umijs/plugin-access-layout --dev\n```\n\n## 说明\n\n这个插件将 plugin-access 和 plugin-layout 插件的功能整合在一起，为了支持 Umi 的约定式用法，还有更多的动态设置方案。\n\n## 特性\n\n1、支持约定式和配置式 2、动态修改权限 3、动态使用菜单 4、支持运行时配置 Pro-Layout 5、支持页面级别配置 Pro-Layout 6、支持页面级权限 7、支持页面级修改权限 8、支持不使用 Pro-layout 9、兼容 Pro 旧项目的写法\n\n## 搭配其他插件\n\n1、配套 plugin-locale 使用，会默认开始国际化的菜单 2、配合 plugin-model 使用，可以使用 useModel('@@accessLayout') 3、配合 plugin-initial-state 使用，可以不指定权限判断数据\n\n## Config 配置\n\n```ts\naccessLayout: {\n  iconNames: ['smile'], // 约定式用法，需要将所有用到的 icon 名称写全，为了按需加载\n  useModel: true, // 声明是否搭配了 plugin-model 使用\n}\n```\n\n## 运行时配置\n\n```ts\nexport const accessLayout = {\n  title: 'Runtime Demo',\n  // Pro-Layout 支持的所有配置\n};\n```\n\n## 页面级配置\n\n```ts\nuseEffect(() => {\n  setLayoutConfig({\n    title: 'PageSetDemo',\n    // Pro-Layout 支持的所有配置\n  });\n}, []);\n```\n\n## 页面级别权限控制\n\n```ts\nimport { useModel } from 'umi';\nconst { access } = useModel('@@accessLayout');\nif (access.canAdmin) {\n  // canAdmin 在src/access 中定义\n  // 或者使用 setAccess 设置\n  console.log('access.canAdmin');\n}\n```\n\n## 页面级修改权限\n\n```tsx\nimport { useModel } from 'umi';\n\nconst IndexPage: FC<PageProps> = ({ index, dispatch }) => {\n  const { setAccess } = useModel('@@accessLayout');\n  return (\n    <div\n      className={styles.center}\n      onClick={() => setAccess({ canAdmin: false })}\n    >\n      点击操作权限\n    </div>\n  );\n};\n```\n\n## 扩展菜单配置\n\n可以指定部分页面不使用 layout\n\n```ts\nconst menuData = [\n  {\n    path: '/login',\n    hideLayout: true,\n  },\n];\n```\n\n## 支持约定式路由用法\n\n```ts\n// src/layouts/index\nimport { AccessLayout } from 'umi';\n\nconst BasicLayout = props => {\n  // 这个数据可以是任意来源的，你可以在登录之后再去获取菜单数据\n  const serveMenuData = [\n    {\n      path: '/',\n      name: 'index',\n      icon: 'smile',\n    },\n    {\n      path: '/ListTableList',\n      name: 'list',\n      icon: 'heart',\n      access: 'canAdmin',\n    },\n    {\n      path: '/login',\n      hideLayout: true,\n    },\n  ];\n  // 这个数据会传递给 src/access.ts\n  // 搭配 plugin-initial-state 使用的话，这个可以不传\n  const initState = {\n    currentUser: {\n      access: 'admin',\n    },\n  };\n  return (\n    <AccessLayout\n      initState={initState}\n      menuData={serveMenuData}\n      {...props}\n    ></AccessLayout>\n  );\n};\n\nexport default BasicLayout;\n```\n","readmeFilename":"README.md","_id":"@alitajs/access-layout@2.5.17-beta.3","_nodeVersion":"12.18.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-/3WUavIO1LQrparrlEUWllzOSMhwRK6Mp0zxaJCjIPkdiiTF47pHXJr6dt7gTr4fKh9AdFPxFtS07QH6G28NUw==","shasum":"6e1e1c2877425e72e287a853c6c4688cc77237b6","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.17-beta.3.tgz","fileCount":17,"unpackedSize":37259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoRCzCRA9TVsSAnZWagAAb9AP/0JfLZ2EpFV3NCh3j9zM\nQms1G0Y6s+D5gP145ZZdr17L599j6pHHEeusHIAHeqKB3DGMvjtVBSEnTfPX\n6UiOWZivQdUOoKSo0T6TUGQfDpD+LZT6oUlI4Mbzg2fz2zSi8tjtA1EyWJyt\nlNwsqgnhT1dwviOqC2QVJ0+PmDCC1RCm90TfBzg2hPYckViyzdo0q/1Amg6P\nKQlhpQI/oCOaS11R4MqimnKitA6RXPmQXHifoQnecj+ii858d5W0Ag+gYTC6\nVsccr1at3AP+n/tAfoe2j5reJ+iEXT3VNAV1VF4/fcUNwGuu+S/o2JJh7MRR\nrUIr39vmm4zjvm3FD/8SG/osfMHbORIeyGWODqJ+GzHQVKn7d9caiiAw5TNU\nQViFts6au6CZIJ8YSqp4byNdzGs7FhmMiJLLbWbkEGAdPkYZcLxVTDMOPnk2\nOxTIK9Do6WD66Kux5RmXRtUavwi1XYM+OT6y8raWCns5+sMT+EGh29TeSNm6\neBnMIsj2gdIvLAlibXl8PzwdtytwsxkR9SyjO1FrnO83ALp9CdzApqhIGRqy\n8qQHo3JdPi5PN02uehutMmPSo2ONG0RVbOJxZOZMnJxyrJyKQc/NwlYw8Gq9\nVhFhL6nJkc7VrS5eEQhLy3Kx24JsKHuuNzek8lRWkSpPiikRzyMFklD+3OaP\nieF2\r\n=9ldM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAm8OYKBJB6ZTCHQPnElKdHWroQPOG2WlPhvVS1ia6x4AiBgZBl1O84+CTHTbngxOZfdwCIO48omgAw7wlqITjYk7g=="}]},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.17-beta.3_1604391091303_0.91260203934345"},"_hasShrinkwrap":false},"2.5.20":{"name":"@alitajs/access-layout","version":"2.5.20","description":"@umijs/access-layout","main":"lib/index.js","types":"lib/index.d.ts","repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"keywords":["umi"],"authors":["xiaohuoni <4486276632@qq.com> (https://github.com/xiaohuoni)"],"license":"MIT","bugs":{"url":"http://github.com/alitajs/alita/issues"},"homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","peerDependencies":{"@ant-design/icons":"^4.0.0","@umijs/plugin-initial-state":"2.x","@umijs/plugin-locale":"0.x","@umijs/plugin-model":"2.x","umi":"3.x"},"publishConfig":{"access":"public"},"dependencies":{"@ant-design/pro-layout":"^6.0.0-4","@umijs/route-utils":"^1.0.12"},"_id":"@alitajs/access-layout@2.5.20","_nodeVersion":"12.18.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-kH013uocClBn/efkm30D7yeRGc4Timii7oIeGKEEi5uEmtXDLZQ8h4uMvPlIUHIuRttU8vAloDle5X+guV1TTQ==","shasum":"2a73ac040d773ba36e373820c97f186a70e9a0a9","tarball":"https://registry.npmjs.org/@alitajs/access-layout/-/access-layout-2.5.20.tgz","fileCount":17,"unpackedSize":37252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfqL4JCRA9TVsSAnZWagAAzJcQAIl6EuTEjmdPuaj+bwdb\nhiczXUc8dKJJkpUVmZrZtLgG6qpmtf0u7VBC030uG8xgCenSRCUu27A553LU\nAPIdoZeFJvW8H0fqbMnb3TClnCUmrpBW7Whxgy4i311mNitVGd2RPf9r9yuU\nywP+PLNIdzqvCaCpTN0X6nqBaWftSwTkRsXvo8fmbqlmEZx1VW2wiHgMwM+J\nA4E2tmhE1pKTe1PTojzj1zLqxDlzlkATiqzRBYGwleWl2VQiwk0SEKYNw50Y\nIykgJVF8jHadHimVWeaaaFqiyWyqHrKbwMg26wij6CYy6duyzL3cRYMPfQRi\nlmNEXC8C7nKDu2mnPCLkU15nR0yQYwRzsWFn0cLUloOTmiqZyJz65yq6ZAvr\nO1KhgLBgIL2HezALddaFGVwInLX8uiGvNTMXettesqfWn5Gik7gxtEyhEsXS\n41ytzG+NTNkyXXkrItJ+8ZpbesBKueeDEcF4ijHw57lkkDnPFvpDg1faEMkj\nrXPuTPzP4DLPpsz3Gx3Iv9187hfoxx1suM38Qup681bK7OE6mWVwtm0P5aa5\nHtVGwpbL0Ve9OYhjptmOTuZ6X+neFxHdDTQbVCHs8KqbDolwliXuMypulMKo\nwSrkG7OizODWRXvk8z/MPQ0CGX+HuJJzYnetrO4Hng7S3c7cevQ5v7wGDHP1\n/E03\r\n=4vBp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAt4zdlvNn4rSmtPk01hmxbn5FfTjAJHXcDUQ4oFz1rrAiEAmtpkylla08FqJzQ8HwWd+oBGl4w43cURtpLS/xKjsG4="}]},"_npmUser":{"name":"xiaohuoni","email":"448627663@qq.com"},"directories":{},"maintainers":[{"name":"hang1017","email":"437132124@qq.com"},{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"cjy0208","email":"fanluan058@gmail.com"},{"name":"shawdanon","email":"shawdanon@foxmail.com"},{"name":"wangxingkang","email":"156148958@qq.com"},{"name":"imhele","email":"work@imhele.com"},{"name":"xiaohuoni","email":"448627663@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/access-layout_2.5.20_1604894217232_0.978168721236423"},"_hasShrinkwrap":false}},"time":{"created":"2020-08-17T10:15:47.935Z","2.5.9":"2020-08-17T10:15:48.434Z","modified":"2022-06-07T09:42:16.974Z","2.5.10":"2020-08-17T10:46:01.191Z","2.5.12":"2020-08-20T03:28:49.640Z","2.5.13":"2020-09-09T07:08:42.222Z","2.5.14":"2020-09-15T09:22:08.679Z","2.5.16-beta.0":"2020-10-15T07:42:45.320Z","2.5.16-beta.1":"2020-10-15T09:12:24.285Z","2.5.16-beta.2":"2020-10-16T10:00:34.019Z","2.5.17-beta.3":"2020-11-03T08:11:31.403Z","2.5.20":"2020-11-09T03:56:57.370Z"},"maintainers":[{"email":"pt370390794@126.com","name":"pengyh"},{"email":"savebtc11@gmail.com","name":"ashoka_j"},{"email":"13067111941x@gmail.com","name":"diyc"},{"email":"448627663@qq.com","name":"xiaohuoni"},{"email":"work@imhele.com","name":"imhele"},{"email":"156148958@qq.com","name":"wangxingkang"},{"email":"292973338@qq.com","name":"shawdanon"},{"email":"fanluan058@gmail.com","name":"cjy0208"},{"email":"sorrycc@gmail.com","name":"sorrycc"},{"email":"437132124@qq.com","name":"hang1017"},{"email":"1270253618@qq.com","name":"hammersjs"}],"description":"@umijs/access-layout","homepage":"https://github.com/alitajs/alita/tree/master/packages/cordova#readme","keywords":["umi"],"repository":{"type":"git","url":"git+https://github.com/alitajs/alita.git"},"bugs":{"url":"http://github.com/alitajs/alita/issues"},"license":"MIT","readme":"# @umijs/plugin-access-layout\n\n## 使用\n\n使用 npm:\n\n```bash\n$ npm install --save-dev @umijs/plugin-access-layout\n```\n\n或者使用 yarn:\n\n```bash\n$ yarn add @umijs/plugin-access-layout --dev\n```\n\n## 说明\n\n这个插件将 plugin-access 和 plugin-layout 插件的功能整合在一起，为了支持 Umi 的约定式用法，还有更多的动态设置方案。\n\n## 特性\n\n1、支持约定式和配置式 2、动态修改权限 3、动态使用菜单 4、支持运行时配置 Pro-Layout 5、支持页面级别配置 Pro-Layout 6、支持页面级权限 7、支持页面级修改权限 8、支持不使用 Pro-layout 9、兼容 Pro 旧项目的写法\n\n## 搭配其他插件\n\n1、配套 plugin-locale 使用，会默认开始国际化的菜单 2、配合 plugin-model 使用，可以使用 useModel('@@accessLayout') 3、配合 plugin-initial-state 使用，可以不指定权限判断数据\n\n## Config 配置\n\n```ts\naccessLayout: {\n  iconNames: ['smile'], // 约定式用法，需要将所有用到的 icon 名称写全，为了按需加载\n  useModel: true, // 声明是否搭配了 plugin-model 使用\n}\n```\n\n## 运行时配置\n\n```ts\nexport const accessLayout = {\n  title: 'Runtime Demo',\n  // Pro-Layout 支持的所有配置\n};\n```\n\n## 页面级配置\n\n```ts\nuseEffect(() => {\n  setLayoutConfig({\n    title: 'PageSetDemo',\n    // Pro-Layout 支持的所有配置\n  });\n}, []);\n```\n\n## 页面级别权限控制\n\n```ts\nimport { useModel } from 'umi';\nconst { access } = useModel('@@accessLayout');\nif (access.canAdmin) {\n  // canAdmin 在src/access 中定义\n  // 或者使用 setAccess 设置\n  console.log('access.canAdmin');\n}\n```\n\n## 页面级修改权限\n\n```tsx\nimport { useModel } from 'umi';\n\nconst IndexPage: FC<PageProps> = ({ index, dispatch }) => {\n  const { setAccess } = useModel('@@accessLayout');\n  return (\n    <div\n      className={styles.center}\n      onClick={() => setAccess({ canAdmin: false })}\n    >\n      点击操作权限\n    </div>\n  );\n};\n```\n\n## 扩展菜单配置\n\n可以指定部分页面不使用 layout\n\n```ts\nconst menuData = [\n  {\n    path: '/login',\n    hideLayout: true,\n  },\n];\n```\n\n## 支持约定式路由用法\n\n```ts\n// src/layouts/index\nimport { AccessLayout } from 'umi';\n\nconst BasicLayout = props => {\n  // 这个数据可以是任意来源的，你可以在登录之后再去获取菜单数据\n  const serveMenuData = [\n    {\n      path: '/',\n      name: 'index',\n      icon: 'smile',\n    },\n    {\n      path: '/ListTableList',\n      name: 'list',\n      icon: 'heart',\n      access: 'canAdmin',\n    },\n    {\n      path: '/login',\n      hideLayout: true,\n    },\n  ];\n  // 这个数据会传递给 src/access.ts\n  // 搭配 plugin-initial-state 使用的话，这个可以不传\n  const initState = {\n    currentUser: {\n      access: 'admin',\n    },\n  };\n  return (\n    <AccessLayout\n      initState={initState}\n      menuData={serveMenuData}\n      {...props}\n    ></AccessLayout>\n  );\n};\n\nexport default BasicLayout;\n```\n","readmeFilename":"README.md"}