{"id":99963,"date":"2020-04-26T09:40:53","date_gmt":"2020-04-26T01:40:53","guid":{"rendered":"http:\/\/4563.org\/?p=99963"},"modified":"2020-04-26T09:40:53","modified_gmt":"2020-04-26T01:40:53","slug":"2020-%e6%9c%80%e6%96%b0%e5%89%8d%e5%90%8e%e7%ab%af%e7%bc%96%e7%a8%8b%e5%ad%a6%e4%b9%a0%e8%a7%86%e9%a2%91","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=99963","title":{"rendered":"2020 \u6700\u65b0\u524d\u540e\u7aef\u7f16\u7a0b\u5b66\u4e60\u89c6\u9891"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  2020 \u6700\u65b0\u524d\u540e\u7aef\u7f16\u7a0b\u5b66\u4e60\u89c6\u9891               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : hfpp2012 <\/span>  <span><i><\/i> 101<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\"> <\/p>\n<h2>2020 \u6700\u65b0\u524d\u540e\u7aef\u7f16\u7a0b\u5b66\u4e60\u89c6\u9891<\/h2>\n<p>UmiJS &amp; TypeScript &amp; Ant Design Pro v4 \u4ece\u96f6\u5f00\u59cb\u5b9e\u6218\u6559\u7a0b\uff08 63 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u57fa\u4e8e\u89d2\u8272\u7684\u6743\u9650\u63a7\u5236\u539f\u7406\u4e0e\u5b9e\u6218\uff08 17 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>Ant Design Pro v4 \u57fa\u4e8e\u89d2\u8272\u7684\u6743\u9650\u8bbf\u95ee\u63a7\u5236\u5b9e\u6218\u6559\u7a0b\uff08 11 \u4e2a\u89c6\u9891 &#8211; \u6b63\u5728\u66f4\u65b0\uff09<\/p>\n<p>Ant Design Pro \u4f01\u4e1a\u7ea7\u540e\u53f0\u5b9e\u6218\uff08 73 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u4f7f\u7528 TypeScript &amp; mocha &amp; chai \u5199\u6d4b\u8bd5\u4ee3\u7801\u5b9e\u6218\uff08 17 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>TypesScript + Nodejs + Express + Mongoose \u5b9e\u73b0 RESTful API \u5b9e\u6218\u6559\u7a0b\uff08 33 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>GraphQL + React Apollo + React Hook \u5927\u578b\u9879\u76ee\u5b9e\u6218\uff08 32 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>GraphQL + React Apollo + React Hook + Express + Mongodb \u5927\u578b\u524d\u540e\u7aef\u5206\u79bb\u9879\u76ee\u5b9e\u6218\u4e4b\u540e\u7aef\uff08 19 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React &amp; MobX \u5165\u95e8\u4e0e\u5b9e\u6218\u89c6\u9891\u6559\u7a0b\uff08 27 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8f7b\u677e\u5b66 UmiJS \u89c6\u9891\u6559\u7a0b\uff08 35 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>GraphQL + React + React Router + Apollo \u5b9e\u6218\u6559\u7a0b\uff08 10 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React SSR &amp; Next.js &amp; GraphQL &amp; TypeScript \u5165\u95e8\u4e0e\u8fdb\u9636\u5b9e\u6218\u89c6\u9891\u6559\u7a0b\uff08 18 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8f7b\u677e\u5b66 dva \uff08\u57fa\u7840 + \u8fdb\u9636\uff09\uff08 32 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>TypeScript \u7ed3\u5408 React \u5199\u4e09\u8fde\u68cb\u6e38\u620f\uff08 13 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>TypeScript + Nodejs \u5b9e\u6218 Github API\uff08 8 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8f7b\u677e\u5b66 Webpack 4 \u89c6\u9891\u6559\u7a0b\uff08 36 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8bf1\u4eba\u7684 GraphQL &amp; React &amp; Apollo \u5165\u95e8\u4e0e\u5b9e\u6218\u89c6\u9891\u6559\u7a0b\uff08 34 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8bf1\u4eba\u7684 TypeScript \u89c6\u9891\u6559\u7a0b\uff08 69 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React \u8fdb\u9636\u63d0\u9ad8 &#8211; \u6280\u5de7\u7bc7 &#8211; React Hook &#8211; \u7b2c 2 \u5b63\uff08 18 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8f7b\u677e\u5b66 React-Router 4\uff08 19 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u7a0b\u5e8f\u4e16\u754c\u4e4b\u901f\u6210\u8bfe\uff08 6 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8ddf\u6211\u4e00\u8d77\u5b66 React &amp; Ant Design\uff08 17 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u7ebf\u4e0a\u670d\u52a1\u5668\u90e8\u7f72\uff08\u524d\u540e\u7aef\uff09\uff08 27 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React \u8fdb\u9636\u63d0\u9ad8 &#8211; \u6280\u5de7\u7bc7 &#8211; \u7b2c 1 \u5b63\uff08 33 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8ddf\u6211\u4e00\u8d77\u5b66 React + dva + Mockjs\uff08 9 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React + dva + roadhog \u8f7b\u677e\u5b66\uff08 7 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8f7b\u677e\u5b66 Redux-Saga\uff08 16 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>Nodejs + Express \u5b9e\u73b0\u591a\u7528\u6237\u535a\u5ba2\u7cfb\u7edf\uff08 23 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React &amp; Redux \u5b9e\u73b0\u6ce8\u518c\u767b\u5f55\u8ba4\u8bc1\u7cfb\u7edf\uff08 31 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React &amp; Redux &amp; React-Router &amp; Nodejs \u5b9e\u6218 crud \u9879\u76ee\uff08 18 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>React &amp; Redux \u5b9e\u6218 Reminder Pro \u9879\u76ee\uff08 5 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>Redux \u5165\u95e8\u6559\u7a0b\uff08 React \u8fdb\u9636\uff09\uff08 20 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>Nodejs + Express + MongoDB \u57fa\u7840\u7bc7\uff08 17 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8f7b\u677e\u5b66 nodejs &#8211; \u57fa\u7840\u7bc7\uff08 18 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>react \u57fa\u7840\u5b9e\u8df5\u7bc7-\u5c0f\u578b\u8d22\u52a1\u7cfb\u7edf\uff08 10 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>\u8bf1\u4eba\u7684 react \u89c6\u9891\u6559\u7a0b-\u57fa\u7840\u7bc7\uff08 14 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<p>webpack 3 \u96f6\u57fa\u7840\u5165\u95e8\u89c6\u9891\u6559\u7a0b\uff08 14 \u4e2a\u89c6\u9891 &#8211; \u5df2\u5b8c\u7ed3\uff09<\/p>\n<\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>0<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>2020 \u6700\u65b0\u524d\u540e\u7aef\u7f16\u7a0b\u5b66\u4e60\u89c6\u9891 &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/99963"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=99963"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/99963\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=99963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=99963"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=99963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}