{"id":673,"date":"2021-03-30T10:19:00","date_gmt":"2021-03-30T02:19:00","guid":{"rendered":"https:\/\/opentrons.com.cn\/?p=673"},"modified":"2024-04-29T14:58:42","modified_gmt":"2024-04-29T06:58:42","slug":"opentrons-protocol-designer-update-batch-edit-overview","status":"publish","type":"post","link":"https:\/\/opentrons.com.cn\/zh-TW\/news\/opentrons-protocol-designer-update-batch-edit-overview\/","title":{"rendered":"Opentrons \u5354\u5b9a\u8a2d\u8a08\u5668\u66f4\u65b0\uff1a\u6279\u6b21\u7de8\u8f2f\u6982\u8ff0"},"content":{"rendered":"\n
\n\u6b64\u529f\u80fd\u5347\u7d1a\u76f4\u63a5\u4f86\u81ea\u5ba2\u6236\u56de\u994b\u3002 \u8b1d\u8b1d\u4f60\uff01 \u6211\u5011\u5f88\u9ad8\u8208\u807d\u5230\u60a8\u7684\u60f3\u6cd5\u2014\u8acb\u7e7c\u7e8c\u63d0\u51fa\uff01 <\/em><\/p>\n<\/blockquote>\n\n\n\n
\u7576\u5354\u8b70\u8a2d\u8a08\u5668 (PD) \u9996\u6b21\u5275\u5efa\u6642\uff0cOpentrons \u8a2d\u60f3\u4e86\u4e00\u500b\u5e73\u53f0\uff0c\u79d1\u5b78\u5bb6\u53ef\u4ee5\u5728\u5176\u4e2d\u5feb\u901f\u5efa\u7acb\u57fa\u672c\u7684\u79fb\u6db2\u5354\u8b70\uff0c\u800c\u7121\u9700\u7de8\u5beb\u4efb\u4f55\u7a0b\u5f0f\u78bc\u3002 \u96a8\u8457 PD \u8d8a\u4f86\u8d8a\u591a\u5730\u88ab\u6211\u5011\u793e\u5340\u6240\u5229\u7528\uff0c\u5b83\u6210\u70ba\u4e00\u7a2e\u5de5\u5177\uff0c\u4f7f\u79d1\u5b78\u5bb6\u80fd\u5920\u5efa\u7acb\u5197\u9577\u800c\u8907\u96dc\u7684\u65b9\u6848\uff0c\u4ee5\u89e3\u6c7a DNA \u63d0\u53d6\u3001\u86cb\u767d\u8cea\u7d14\u5316\u548c COVID-19 \u8a3a\u65b7\u7b49\u61c9\u7528\u3002 \u7576\u6211\u5011\u958b\u59cb\u770b\u5230\u79d1\u5b78\u5bb6\u4f7f\u7528 PD \u5efa\u7acb\u5305\u542b 100 \u591a\u500b\u6b65\u9a5f\u7684\u65b9\u6848\u6642\uff0c\u6211\u5011\u77e5\u9053\u6211\u5011\u9700\u8981\u70ba\u4ed6\u5011\u63d0\u4f9b\u66f4\u597d\u7684\u65b9\u6cd5\u4f86\u512a\u5316\u548c\u7de8\u8f2f\u4ed6\u5011\u7684\u65b9\u6848\u3002 \u79d1\u5b78\u5bb6\u6709\u8db3\u5920\u591a\u7684\u64d4\u6182\uff1a\u6211\u5011\u4e0d\u5e0c\u671b\u4ed6\u5011\u82b1\u6642\u9593\u4e00\u904d\u53c8\u4e00\u904d\u5730\u4e4f\u5473\u5730\u6539\u8b8a\u76f8\u540c\u7684\u8a2d\u5b9a\u3002<\/p>\n\n\n\n
\u6240\u4ee5\uff0c\u6211\u5011\u525b\u525b\u70ba PD \u65b0\u589e\u4e86\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\uff01 \u4f7f\u7528\u8005\u73fe\u5728\u53ef\u4ee5\u9078\u64c7\u3001\u8907\u88fd\u3001\u522a\u9664\u548c\u7de8\u8f2f\u591a\u500b\u6b65\u9a5f\uff0c\u5f9e\u800c\u80fd\u5920\u66f4\u5feb\u5730\u8fed\u4ee3\u548c\u512a\u5316\u79d1\u5b78\u5354\u8b70\u3002<\/p>\n\n\n\n
\u5728\u7522\u54c1\u958b\u767c\u5718\u968a\u958b\u59cb\u8003\u616e\u5982\u4f55\u5b8c\u6210\u6b64\u529f\u80fd\u4e4b\u524d\uff0c\u6211\u5011\u5c31\u77e5\u9053\u9019\u5c07\u662f\u4e00\u500b\u5de8\u5927\u7684\u5de5\u7a0b\u6311\u6230\u3002 \u64f4\u5c55 PD \u9019\u6a23\u7684\u61c9\u7528\u7a0b\u5f0f\u4ee5\u652f\u63f4\u5b8c\u5168\u4e0d\u540c\u7684\u4f7f\u7528\u8005\u6d41\u7a0b\uff08\u4f8b\u5982\u6279\u6b21\u7de8\u8f2f\uff09\u5c07\u9700\u8981\u5927\u91cf\u91cd\u69cb\uff0c\u9019\u6703\u5f71\u97ff Protocol Designer \u7684\u6838\u5fc3\u90e8\u5206\u3002 \u9019\u7bc7\u6587\u7ae0\u5c07\u5f9e\u5de5\u7a0b\u89d2\u5ea6\u91cd\u9ede\u8a0e\u8ad6\u6b64\u529f\u80fd\uff0c\u4f46\u6211\u4e5f\u60f3\u6307\u51fa\u5b8c\u6210\u6b64\u529f\u80fd\u6240\u9762\u81e8\u7684\u5de8\u5927\u8a2d\u8a08\u6311\u6230\u3002 PD \u7684\u6838\u5fc3\u539f\u5247\u4e4b\u4e00\u662f\u6613\u7528\u6027\uff0c\u6253\u9020\u6613\u65bc\u4f7f\u7528\u3001\u76f4\u89ba\u7684\u4f7f\u7528\u8005\u9ad4\u9a57\u4f86\u5efa\u7acb\u548c\u512a\u5316\u8907\u96dc\u7684\u79d1\u5b78\u5354\u8b70\u7d55\u975e\u6613\u4e8b\u3002<\/p>\n\n\n\n
\u5c08\u70ba\u4e00\u6b21\u7de8\u8f2f\u4e00\u500b\u6b65\u9a5f\u800c\u8a2d\u8a08<\/p>\n\n\n\n
PD \u65e8\u5728\u5f9e\u982d\u958b\u59cb\u5efa\u7acb\u79d1\u5b78\u65b9\u6848\uff0c\u4f9d\u5e8f\u5efa\u7acb\u548c\u7de8\u8f2f\u6b65\u9a5f\u3002 \u6d41\u7a0b\u5982\u4e0b\uff1a<\/p>\n\n\n\n
\n
- \u4f7f\u7528\u8005\u5efa\u7acb\u4e00\u500b\u6b65\u9a5f\uff08\u8f49\u79fb\u3001\u6df7\u5408\u3001\u52a0\u71b1\u7b49\uff09<\/li>\n\n\n\n
- \u5728\u8868\u683c\u4e2d\u586b\u5beb\u76f8\u95dc\u6b65\u9a5f\u8cc7\u8a0a\uff08\u79fb\u6db2\u5668\u3001\u5be6\u9a57\u5ba4\u5668\u76bf\u3001\u6db2\u9ad4\u9ad4\u7a4d\u7b49\uff09<\/li>\n\n\n\n
- \u5132\u5b58\u8868\u683c<\/li>\n\n\n\n
- \u5efa\u7acb\u4e0b\u4e00\u6b65<\/li>\n\n\n\n
- \u7b49\u7b49<\/li>\n<\/ol>\n\n\n\n
<\/figure>\n\n\n\n\u9019\u610f\u5473\u8457\u5728\u4efb\u4f55\u7d66\u5b9a\u6642\u9593\uff0cPD \u4e2d\u7684\u4e3b\u300c\u8a2d\u8a08\u300d\u6a19\u7c64\u90fd\u6703\u986f\u793a\u4ee5\u4e0b\u90e8\u5206\/\u5168\u90e8\u5167\u5bb9\uff1a<\/p>\n\n\n\n
\n
- \u5354\u5b9a\u4e2d\u6240\u6709\u6b65\u9a5f\u7684\u5217\u8868<\/li>\n\n\n\n
- \u5354\u5b9a\u7279\u5b9a\u6b65\u9a5f\u7684\u8996\u89ba\u5feb\u7167<\/li>\n\n\n\n
- \u4f9b\u4f7f\u7528\u8005\u586b\u5beb\u7684\u8868\u683c\uff0c\u4ee5\u6307\u5b9a\u8a72\u6b65\u9a5f\u61c9\u57f7\u884c\u7684\u64cd\u4f5c<\/li>\n<\/ol>\n\n\n\n
PD \u7684 UI \u5143\u4ef6\uff08\u5167\u5efa\u65bc React\uff09\u548c\u5168\u57df\u72c0\u614b\u7ba1\u7406\u5132\u5b58\uff08\u5728 Redux \u4e2d\u5be6\u4f5c\uff09\u5c31\u662f\u70ba\u4e86\u9069\u61c9\u9019\u7a2e\u4f7f\u7528\u8005\u6d41\u7a0b\u800c\u5efa\u69cb\u7684\u3002 \u9019\u610f\u5473\u8457 PD \u7684 redux \u5132\u5b58\u6703\u8ffd\u8e64\u300c\u9078\u5b9a\u6b65\u9a5f\u300d\u4e4b\u985e\u7684\u5167\u5bb9\uff0c\u4ee5\u4fbf\u7528\u6236\u53ef\u4ee5\u76f4\u89c0\u5730\u770b\u5230\u5354\u8b70\u7684\u7279\u5b9a\u90e8\u5206\u5be6\u969b\u767c\u751f\u7684\u60c5\u6cc1\u3002 \u5b83\u9084\u6703\u8ffd\u8e64\u300c\u672a\u5132\u5b58\u7684\u8868\u55ae\u300d\u7b49\u5167\u5bb9\uff0c\u5728\u63d0\u4ea4\u4e4b\u524d\u8ffd\u8e64\u5f85\u8655\u7406\u7684\u8b8a\u66f4\u3002<\/p>\n\n\n\n
\u8acb\u6ce8\u610f\u4e0a\u9762\u6355\u7372\u7684\u8cc7\u6599\u7684\u5947\u7570\u6027\uff08\u9078\u5b9a\u7684\u6b65\u9a5f\uff0c\u672a\u5132\u5b58\u7684\u5f62\u5f0f\uff09\u3002 PD \u7684 redux \u5132\u5b58\u548c React \u5143\u4ef6\u65e8\u5728\u8207\u4e00\u500b\u6b65\u9a5f\u4ea4\u4e92\uff0c\u800c\u4e0d\u662f\u591a\u500b\u6b65\u9a5f\u3002 \u70ba\u4e86\u8aaa\u660e\u9019\u4e00\u9ede\uff0c\u8b93\u6211\u5011\u770b\u770b PD \u5982\u4f55\u6839\u64da\u9078\u64c7\u7684\u6b65\u9a5f\u586b\u5145\u5be6\u9a57\u5ba4\u5668\u76bf\u4e0a\u7684\u5b54\uff08\u9019\u5c31\u662f\u4e0a\u5716\u4e2d\u5b54\u986f\u793a\u70ba\u7da0\u8272\u7684\u65b9\u5f0f\uff09\u3002<\/p>\n\n\n\n
\n
- \u7528\u6236\u9ede\u9078\u4e00\u500b\u6b65\u9a5f<\/li>\n\n\n\n
- \u8abf\u5ea6\u4e00\u500b\u540d\u70ba\u300cSELECT_STEP\u300d\u7684 redux \u64cd\u4f5c\uff0c\u66f4\u65b0\u300c\u6240\u9078\u9805\u76ee\u300dreducer<\/li>\n\n\n\n
- \u5075\u807d\u300c\u6240\u9078\u9805\u76ee\u300d\u8b8a\u66f4\u7684 redux \u9078\u64c7\u5668\u5c07\u641c\u5c0b\u8a72\u7279\u5b9a\u6b65\u9a5f\u4e2d\u6b63\u5728\u4f7f\u7528\u7684\u5be6\u9a57\u5ba4\u5668\u76bf\u548c\u5b54<\/li>\n\n\n\n
- \u5b54\u8a0a\u606f\u5c07\u50b3\u905e\u5230\u540d\u70ba\u300cLabwareRender\u300d\u7684\u5143\u4ef6\u4e2d\uff0c\u7136\u5f8c\u8a72\u5143\u4ef6\u5c07\u4f7f\u7528\u8a72\u8cc7\u8a0a\u5c0d\u5b54\u9032\u884c\u8457\u8272<\/li>\n<\/ol>\n\n\n\n
\u4f46\u662f\uff0c\u7576\u6211\u5011\u958b\u59cb\u8ffd\u8e64\u591a\u500b\u9078\u5b9a\u6b65\u9a5f\u800c\u4e0d\u662f\u53ea\u8ffd\u8e64\u4e00\u500b\u6b65\u9a5f\u6642\uff0c\u6703\u767c\u751f\u4ec0\u9ebc\u4e8b\uff1f \u7279\u5225\u662f\uff0c\u4e0a\u9762\u7684\u6b65\u9a5f 3 \u6703\u767c\u751f\u4ec0\u9ebc\u4e8b\uff1f \u5982\u679c\u6211\u5011\u9078\u64c7\u4e86\u591a\u500b\u9805\u76ee\uff0c\u6211\u5011\u8a72\u600e\u9ebc\u8fa6\uff1f<\/p>\n\n\n\n
\u70ba\u4e86\u9632\u6b62\u540c\u6642\u9078\u64c7\/\u7de8\u8f2f\u591a\u500b\u6b65\u9a5f\u6642\u5143\u4ef6\u640d\u58de\uff0c\u6211\u5011\u5fc5\u9808\u5c0d\u8cc7\u6599\u7684\u8868\u793a\u548c\u8f49\u63db\u65b9\u5f0f\u9032\u884c\u6838\u5fc3\u8b8a\u66f4\u3002 \u8b93\u6211\u5011\u56de\u9867\u4e00\u4e0b\u6211\u5011\u6240\u505a\u7684\u4e8b\u60c5\u3002<\/p>\n\n\n\n
\u8ffd\u8e64\u591a\u500b\u9078\u5b9a\u7684\u6b65\u9a5f<\/p>\n\n\n\n
\u5728\u6b64\u529f\u80fd\u4e4b\u524d\uff0c\u6211\u5011\u50c5\u5728 Redux \u5132\u5b58\u4e2d\u8ffd\u8e64\u55ae\u4e00\u300cselectedItem\u300d\u3002 \u6211\u5011\u7684\u300cselectedItem\u300dreducer \u985e\u578b\u4ecb\u9762\u985e\u4f3c\u65bc\u4e0b\u9762\u7684\u7a0b\u5f0f\u78bc\u7247\u6bb5\u3002 \u8acb\u6ce8\u610f\uff0c\u672c\u6587\u4e2d\u7684\u6240\u6709\u7a0b\u5f0f\u78bc\u7247\u6bb5\u5747\u63a1\u7528 JavaScript \u7de8\u5beb\uff0c\u4e26\u4f7f\u7528 flow js \u9375\u5165\u3002<\/p>\n\n\n\n
Type SelectableItem = SingleSelectedItem
const selectedItem = (state: SelectItemState, action: SelectedItemAction): ?SelectableItem <\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n\u6e1b\u901f\u5668\u51fd\u6578\u300cselectedItem\u300d\u63a5\u53d7\u72c0\u614b\u548c\u64cd\u4f5c\uff0c\u4e26\u50b3\u56de\u6240\u9078\u9805\u76ee\uff08\u4fdd\u5b58\u6240\u9078\u9805\u76ee\u76f8\u95dc\u8cc7\u8a0a\u7684\u7269\u4ef6\uff09\uff0c\u5982\u679c\u6c92\u6709\u6240\u9078\u9805\u76ee\uff0c\u5247\u50b3\u56de null\u3002<\/p>\n\n\n\n
\u70ba\u4e86\u907f\u514d\u5728\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e0b\u65b0\u589e\u65b0\u7684\u7e2e\u6e1b\u5668\u4f86\u4fdd\u5b58\u591a\u500b\u6b65\u9a5f\uff0c\u6211\u5011\u9078\u64c7\u4fee\u6539\u300cselectedItem\u300d\u7e2e\u6e1b\u5668\u4ee5\u9069\u61c9\u8fd4\u56de\u55ae\u4e00\u6b65\u9a5f\u548c\u591a\u500b\u6b65\u9a5f\u3002<\/p>\n\n\n\n
Type SelectableItem = SingleSelectedItem | MultipleSelectedItem
const selectedItem = (state: SelectItemState, action: SelectedItemAction): ?SelectableItem <\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n\u300cselectedItem\u300d\u7684\u50b3\u56de\u985e\u578b\u5df2\u4fee\u6539\u70ba\u80fd\u5920\u5132\u5b58\u5305\u542b\u55ae\u4e00\u6b65\u9a5f id \u7684\u7269\u4ef6\uff08\u4ee3\u8868\u55ae\u4e00\u9078\u64c7\u985e\u578b\uff09\uff0c\u6216\u5305\u542b\u591a\u500b\u6b65\u9a5f id \u6e05\u55ae\u7684\u7269\u4ef6\uff08\u4ee3\u8868\u591a\u91cd\u9078\u64c7\u985e\u578b\uff09 \u3002 \u70ba\u4e86\u544a\u8a34 redux \u6211\u5011\u5df2\u7d93\u9078\u64c7\u4e86\u591a\u500b\u6b65\u9a5f\uff0c\u6211\u5011\u5efa\u7acb\u4e86\u4e00\u500b\u540d\u70ba\u300cSELECT_MULTIPLE_STEPS\u300d\u7684\u64cd\u4f5c\uff0c\u300cselectedItem\u300dreducer \u51fd\u6578\u5c07\u63a5\u53d7\u8a72\u64cd\u4f5c\uff0c\u4e26\u66f4\u65b0\u5176\u503c\u4ee5\u8868\u793a\u591a\u500b\u6b65\u9a5f\uff08\u8acb\u53c3\u95b1\u985e\u578b\u300cMultipleSelectedItem\u300d\uff09<\/p>\n\n\n\n
\u540d\u70ba\u300cselectedItem\u300d\u7684\u6e1b\u901f\u5668\u80af\u5b9a\u6703\u6709\u4e9b\u5c37\u5c2c\uff0c\u5b83\u53ef\u80fd\u4fdd\u5b58\u8868\u793a\u591a\u500b\u9805\u76ee\u7684\u6578\u64da\uff0c\u4f46\u6211\u5011\u6700\u7d42\u6c7a\u5b9a\uff0c\u9019\u7a2e\u6b0a\u8861\u662f\u503c\u5f97\u7684\uff0c\u4e0d\u5fc5\u6dfb\u52a0\u984d\u5916\u7684\u6e1b\u901f\u5668\u4f86\u8868\u793a\u591a\u500b\u9078\u5b9a\u7684\u9805\u76ee\uff0c\u5f9e\u800c\u5fc5\u9808\u53d6\u6d88\u4e00\u500b\u6216\u591a\u500b\u9805\u76ee\u53e6\u4e00\u500b\u662f\u5728\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u548c\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e4b\u9593\u5207\u63db\u6642\u3002<\/p>\n\n\n\n
\u70ba\u4e86\u9632\u6b62\u904e\u53bb\u53ea\u63a5\u53d7\u4e00\u500b\u6b65\u9a5f\u4f5c\u70ba props \u7684\u5143\u4ef6\u88ab\u7834\u58de\uff0c\u6211\u5011\u80fd\u5920\u5229\u7528 redux \u9078\u64c7\u5668\u6a21\u5f0f\u5c07\u4f86\u81ea\u6e1b\u901f\u5668\u7684\u8cc7\u6599\u8f49\u63db\u70ba\u6211\u5011\u7684\u5143\u4ef6\u53ef\u4ee5\u63a5\u53d7\u7684\u683c\u5f0f\u3002 \u5c07\u6240\u9078\u6b65\u9a5f\u7684\u8cc7\u8a0a\u63d0\u4f9b\u7d66\u6211\u5011\u7684\u5143\u4ef6\u7684\u4e3b\u9078\u64c7\u5668\u7a31\u70ba\u201cgetSelectedStepId\u201d\uff0c\u5b83\u66fe\u7d93\u57f7\u884c\u4ee5\u4e0b\u64cd\u4f5c\uff1a<\/p>\n\n\n\n
const get selected step ID: ?string = (state: state) => state.selected item<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n \u9019\u662f\u9078\u64c7\u5668\u904e\u53bb\u6240\u505a\u7684\u4e8b\u60c5\u7684\u7c21\u5316\uff0c\u4f46\u4f60\u660e\u767d\u4e86\u2014\u2014\u5b83\u57fa\u672c\u4e0a\u9032\u5165\u4e86\u201cselectedStep\u201d\u6e1b\u901f\u5668\u4e26\u8fd4\u56de\u5176\u4e2d\u7684\u4efb\u4f55\u5167\u5bb9\u3002 \u56e0\u70ba\u6211\u5011\u7684\u7d44\u4ef6\u5f9e\u9078\u64c7\u5668\u800c\u4e0d\u662f\u6e1b\u901f\u5668\u7372\u53d6\u9078\u5b9a\u7684\u6b65\u9a5f\uff0c\u6240\u4ee5\u6211\u5011\u80fd\u5920\u9996\u5148\u8f49\u63db\u6e1b\u901f\u5668\u4e2d\u4fdd\u5b58\u7684\u6578\u64da\uff0c\u7136\u5f8c\u518d\u5c07\u5176\u8f38\u5165\u5230\u6211\u5011\u7684\u7d44\u4ef6\u4e2d\u3002<\/p>\n\n\n\n
\u9019\u610f\u5473\u8457\u6211\u5011\u8981\u505a\u7684\u5c31\u662f\u4fee\u6539\u201cgetSelectedStepId\u201d\u4ee5\u5728reducer\u4fdd\u5b58\u201c\u55ae\u9078\u64c7\u985e\u578b\u201d\u6642\u8fd4\u56de\u6b65\u9a5fid\uff0c\u5426\u5247\u8fd4\u56denull\uff1a<\/p>\n\n\n\n
const get selected step ID: ?string = (state: state) => state.selected item.selection type === single_step_selection_type ? state.selected item.ID : null<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n \u7531\u65bc\u6211\u5011\u73fe\u6709\u7684\u5143\u4ef6\u73fe\u5728\u80fd\u5920\u8655\u7406\u9078\u64c7\u7684\u591a\u500b\u6b65\u9a5f\uff0c\u56e0\u6b64\u6211\u5011\u65b0\u589e\u4e86\u4e00\u500b\u540d\u70ba\u201cgetMultiSelectItemIds\u201d\u7684\u65b0\u9078\u64c7\u5668\uff0c\u5b83\u985e\u4f3c\u65bc\u201cgetSelectedStepId\u201d\uff0c\u4f46\u5728\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e0b\u8fd4\u56de\u6b65\u9a5fID \u5217\u8868\uff0c\u5426\u5247\u8fd4\u56denull\u3002 \u6b64\u9078\u64c7\u5668\u5c07\u7528\u65bc\u544a\u8a34 PD \u5728\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e0b\u9078\u64c7\u4e86\u54ea\u4e9b\u6b65\u9a5f\u3002<\/p>\n\n\n\n
const get multi select item IDS: ?array = (state: state) => state.selected item.selection type === multi_step_selection_type ? state.selected item.IDS : null<\/string><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n \u5f9e\u6e1b\u901f\u5668 => \u9078\u64c7\u5668 => \u7d44\u4ef6\u4e2d\u7372\u53d6\u8cc7\u6599\u6d41\u78ba\u5be6\u5c0d\u6211\u5011\u6709\u5e6b\u52a9\uff0c\u56e0\u70ba\u6211\u5011\u80fd\u5920\u66f4\u6539\u6e1b\u901f\u5668\u7684\u7d50\u69cb\uff0c\u800c\u4e0d\u5fc5\u64d4\u5fc3\u7d44\u4ef6\u640d\u58de\u3002 \u6b64\u5916\uff0c\u7531\u65bc\u6211\u5011\u4f7f\u7528 reselect \u5c07\u9078\u64c7\u5668\u7d44\u5408\u5728\u4e00\u8d77\uff0c\u56e0\u6b64\u6240\u6709\u4f7f\u7528\u300cgetSelectedStepId\u300d\u7684\u9ad8\u968e\u9078\u64c7\u5668\u4ecd\u7136\u53ef\u4ee5\u6b63\u5e38\u904b\u4f5c\u3002<\/p>\n\n\n\n
\u586b\u5165\u6279\u6b21\u7de8\u8f2f\u8868\u55ae<\/strong><\/p>\n\n\n\n
PD \u6839\u64da\u898f\u5247\u77e9\u9663\u6c7a\u5b9a\u591a\u500b\u6b65\u9a5f\u4e2d\u7684\u54ea\u4e9b\u6b04\u4f4d\u662f\u53ef\u7de8\u8f2f\u7684\u3002 \u4f8b\u5982\uff0c\u5982\u679c\u4f7f\u7528\u8005\u9078\u64c7\u5169\u500b\u8f49\u79fb\u6b65\u9a5f\uff0c\u4e26\u4e14\u9019\u5169\u500b\u6b65\u9a5f\u5177\u6709\u4e0d\u540c\u7684\u79fb\u6db2\u5668\uff0c\u5247\u4ed6\u5011\u4e0d\u61c9\u80fd\u5920\u4fee\u6539\u5169\u500b\u6b65\u9a5f\u4e4b\u9593\u5171\u4eab\u7684\u79fb\u6db2\u5668\u6d41\u901f\u8a2d\u5b9a\u3002<\/p>\n\n\n\n
\u4f7f\u7528\u898f\u5247\u77e9\u9663\uff0c\u6211\u5011\u5efa\u7acb\u4e86\u53e6\u4e00\u500b\u540d\u70ba\u300cgetMultiSelectDisabledFields\u300d\u7684 redux \u9078\u64c7\u5668\uff0c\u9867\u540d\u601d\u7fa9\uff0c\u5b83\u6c7a\u5b9a\u5728\u591a\u9078\u6a21\u5f0f\u4e0b\u61c9\u505c\u7528\u54ea\u4e9b\u6b04\u4f4d\u3002 \u5b83\u6703\u8fed\u4ee3\u6240\u9078\u8868\u55ae\u4e2d\u7684\u6240\u6709\u5b57\u6bb5\uff0c\u4e26\u78ba\u5b9a\u8868\u55ae\u662f\u5426\u5171\u7528\u76f8\u540c\u7684\u79fb\u6db2\u5668\u3001\u5be6\u9a57\u5ba4\u5668\u5177\u7b49\u3002\u6839\u64da\u6bcf\u500b\u6b04\u4f4d\u7684\u898f\u5247\uff0c\u5b83\u5c07\u50b3\u56de\u54ea\u4e9b\u6b04\u4f4d\u88ab\u7981\u7528\u7684\u5c0d\u61c9\u4ee5\u53ca\u6bcf\u500b\u6b04\u4f4d\u88ab\u505c\u7528\u7684\u539f\u56e0\u3002 \u5b57\u6bb5\u88ab\u7981\u7528\u3002 \u7136\u5f8c\uff0c\u6279\u6b21\u7de8\u8f2f\u8868\u55ae\u5143\u4ef6\u53ef\u4ee5\u4f7f\u7528\u6b64\u8cc7\u8a0a\u4f86\u586b\u5165\u54ea\u4e9b\u6b04\u4f4d\u53ef\u7de8\u8f2f\uff0c\u54ea\u4e9b\u6b04\u4f4d\u7121\u6cd5\u7de8\u8f2f\u3002<\/p>\n\n\n\n
<\/figure>\n\n\n\n\u8ffd\u8e64\u6279\u6b21\u7de8\u8f2f\u66f4\u6539<\/strong><\/p>\n\n\n\n
\u586b\u5145\u6279\u6b21\u7de8\u8f2f\u8868\u55ae\u7684\u6b04\u4f4d\u5f8c\uff0c\u9700\u8981\u5728\u4f7f\u7528\u8005\u4fee\u6539\u5b83\u5011\u6642\u8ffd\u8e64\u5176\u503c\u7684\u8b8a\u66f4\u3002 \u9019\u662f\u51fa\u65bc\u4ee5\u4e0b\u5e7e\u500b\u539f\u56e0\uff1a<\/p>\n\n\n\n
\n
- \u6211\u5011\u9700\u8981\u77e5\u9053\u7528\u6236\u662f\u5426\u5c0d\u8868\u55ae\u9032\u884c\u4e86\u4efb\u4f55\u66f4\u6539\uff0c\u56e0\u70ba\u5982\u679c\u4ed6\u5011\u9032\u884c\u4e86\u66f4\u6539\uff0c\u6211\u5011\u60f3\u63d0\u9192\u4ed6\u5011\uff0c\u5982\u679c\u4ed6\u5011\u5617\u8a66\u9000\u51fa\u8868\u55ae\uff0c\u4ed6\u5011\u5c07\u4e1f\u5931\u9019\u4e9b\u66f4\u6539\u3002<\/li>\n\n\n\n
- \u4e00\u65e6\u4ed6\u5011\u5b8c\u6210\u66f4\u6539\uff0c\u6211\u5011\u9700\u8981\u5c07\u4ed6\u5011\u6240\u505a\u7684\u672a\u5132\u5b58\u7684\u66f4\u6539\uff08\u5f71\u97ff\u591a\u500b\u6b65\u9a5f\uff09\u5408\u4f75\u5230 PD \u5168\u57df\u72c0\u614b\u5167\u5df2\u5132\u5b58\u7684\u6b65\u9a5f\u5c0d\u61c9\u4e2d\u3002<\/li>\n<\/ol>\n\n\n\n
\u5c0d\u65bc\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\uff0c\u6709\u53e6\u4e00\u500b\u540d\u70ba\u300cunsavedForm\u300d\u7684\u6e1b\u901f\u5668\uff0c\u5b83\u5c07\u6240\u6709\u8cc7\u8a0a\u4fdd\u5b58\u5728\u55ae\u4e00\u672a\u5132\u5b58\u7684\u8868\u55ae\u4e2d\uff0c\u4f46\u6211\u5011\u6c7a\u5b9a\u4e0d\u5728\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e2d\u91cd\u8907\u4f7f\u7528\u5b83\uff0c\u56e0\u70ba\uff1a<\/p>\n\n\n\n
1.\u6279\u91cf\u7de8\u8f2f\u8868\u55ae\u4fdd\u5b58\u591a\u500b\u8868\u55ae\u7684\u4fe1\u606f\uff0c\u800c\u4e0d\u50c5\u50c5\u662f\u4e00\u500b\u8868\u55ae<\/p>\n\n\n\n
\n
- \u5728\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e0b\uff0c\u50c5\u4fdd\u5b58\u6709\u95dc\u54ea\u4e9b\u8868\u55ae\u6b04\u4f4d\u5df2\u8b8a\u66f4\u7684\u8cc7\u8a0a\u8981\u6709\u7528\u5f97\u591a\u3002 \u9019\u6a23\uff0c\u7576\u4f7f\u7528\u8005\u5132\u5b58\u6279\u6b21\u7de8\u8f2f\u8868\u55ae\u6642\uff0c\u6211\u5011\u6240\u8981\u505a\u7684\u5c31\u662f\u5c07\u8b8a\u66f4\u64f4\u5c55\u5230\u4fdd\u5b58\u6240\u6709\u5df2\u5132\u5b58\u8868\u55ae\u8cc7\u8a0a\u7684\u300csavedStepForms\u300d\u7e2e\u6e1b\u7a0b\u5f0f\u4e2d\u7684\u6bcf\u500b\u53d7\u5f71\u97ff\u7684\u6b65\u9a5f\u3002 \u9019\u4e5f\u610f\u5473\u8457\u53ea\u8981\u8868\u793a\u66f4\u6539\u7684\u7269\u4ef6\u4e0d\u70ba\u7a7a\uff0c\u6211\u5011\u5c31\u77e5\u9053\u4f7f\u7528\u8005\u5df2\u9032\u884c\u66f4\u6539\u3002<\/li>\n<\/ol>\n\n\n\n
\u70ba\u4e86\u5be6\u73fe\u9019\u4e00\u9ede\uff0c\u6211\u5011\u5275\u5efa\u4e86\u4e00\u500b\u540d\u70ba\u300cbatchEditFormChanges\u300d\u7684\u65b0\u6e1b\u901f\u5668\uff0c\u5b83\u5305\u542b\u4e00\u500b\u7d14 JavaScript \u5c0d\u8c61\uff0c\u5c07\u7de8\u8f2f\u7684\u6b04\u4f4d\u540d\u7a31\u8868\u793a\u70ba\u9375\uff0c\u4ee5\u53ca\u95dc\u806f\u7684\u6b04\u4f4d\u503c\u3002<\/p>\n\n\n\n
\u91cd\u8907\u4f7f\u7528\u8868\u55ae\u5143\u4ef6<\/strong><\/p>\n\n\n\n
PD \u7684\u8868\u55ae\u5143\u4ef6\u975e\u5e38\u201c\u667a\u6167\u201d\uff0c\u56e0\u70ba\u5b83\u5011\u9023\u63a5\u5230 redux\uff0c\u56e0\u6b64\u53ef\u4ee5\u5b58\u53d6\u8868\u55ae\u8cc7\u6599\u3002 \u554f\u984c\u5728\u65bc\u300c\u667a\u6167\u578b\u300d\u5143\u4ef6\u4e2d\u7684\u908f\u8f2f\u76f4\u63a5\u8207\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u76f8\u95dc\u3002 \u70ba\u4e86\u6d88\u9664\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u7684\u4f9d\u8cf4\uff0c\u6211\u5011\u6c7a\u5b9a\u5728\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u548c\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u4e0b\u6ce8\u5165\u8868\u55ae\u5143\u4ef6\uff0c\u4e26\u4f7f\u7528\u4e00\u7d44\u5171\u7528\u540d\u70ba\u300cFieldProps\u300d\u7684\u901a\u7528 API \u7684 props<\/p>\n\n\n\n
export type FieldProps = {|
disabled: boolean,
errorToShow: ?string,
isIndeterminate?: boolean,
name: string,
onFieldBlur: () => mixed,
onFieldFocus: () => mixed,
tooltipContent?: ?string,
updateValue: mixed => void,
value: mixed,
|}<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n\u70ba\u4e86\u5be6\u73fe\u9019\u4e00\u76ee\u6a19\uff0c\u6211\u5011\u5275\u5efa\u4e86\u5169\u500b\u55ae\u7368\u7684\u51fd\u6578\uff08\u4e00\u500b\u7528\u65bc\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\uff0c\u4e00\u500b\u7528\u65bc\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\uff09\uff0c\u8ca0\u8cac\u8a08\u7b97\u4e0a\u9762\u7684\u6bcf\u500b\u300cFieldProps\u300d\u3002 \u5b83\u5011\u88ab\u6070\u7576\u5730\u547d\u540d\u70ba\u201cmakeSingleEditFieldProps\u201d\u548c\u201cmakeBatchEditFieldProps\u201d\u3002 \u55ae\u4e00\u7de8\u8f2f\u8868\u55ae\u7684\u4e3b\u8981\u7236\u5143\u4ef6\u4f7f\u7528\u524d\u8005\uff0c\u800c\u6279\u6b21\u7de8\u8f2f\u8868\u55ae\u7684\u5c0d\u61c9\u5143\u4ef6\u5247\u4f7f\u7528\u5f8c\u8005\u3002<\/p>\n\n\n\n
\u9019\u5169\u500b\u7d14\u51fd\u6578\u90fd\u6703\u53d6\u5f97\u5c0d\u61c9\u7684\u55ae\u7de8\u8f2f\/\u6279\u6b21\u7de8\u8f2f\u72c0\u614b\u8cc7\u8a0a\uff08\u4f8b\u5982\u6bcf\u500b\u8868\u55ae\u4e2d\u5305\u542b\u54ea\u4e9b\u8cc7\u8a0a\uff09\uff0c\u57f7\u884c\u5fc5\u8981\u7684\u908f\u8f2f\uff0c\u4e26\u50b3\u56de\u4e00\u500b\u5305\u542b\u8207\u4e0a\u9762\u76f8\u540c\u7684\u300cFieldProps\u300d\u4ecb\u9762\u7684\u7269\u4ef6\u3002 \u9019\u610f\u5473\u8457\u53ea\u8981\u6211\u5011\u6240\u6709\u7684\u8868\u55ae\u5143\u4ef6\u63a5\u53d7\u201cFieldProps\u201d\u63a5\u53e3\uff0c\u5b83\u5011\u5c31\u53ef\u4ee5\u7528\u65bc\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u548c\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u3002<\/p>\n\n\n\n
\u5c07\u6211\u5011\u73fe\u6709\u7684\u8868\u55ae\u5143\u4ef6\u5f9e\u8026\u5408\u7684\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u908f\u8f2f\u4e2d\u9077\u79fb\u51fa\u4f86\u662f\u4e00\u9805\u76f8\u7576\u5927\u7684\u5de5\u4f5c\uff08\u800c\u4e14\u6211\u5011\u9084\u6709\u66f4\u591a\u5de5\u4f5c\u8981\u505a\uff09\uff0c\u4f46\u662f\u5275\u5efa\u9019\u500b\u901a\u7528\u7684props \u4ecb\u9762\u5141\u8a31\u6211\u5011\u91cd\u8907\u4f7f\u7528\u73fe\u6709\u7684\u8868\u55ae\u6b04\u4f4d\u5143\u4ef6\uff0c\u540c\u6642\u7e6a\u88fd\u4e00\u500b\u55ae\u4e00\u7de8\u8f2f\u6a21\u5f0f\u908f\u8f2f\u548c\u6279\u6b21\u7de8\u8f2f\u6a21\u5f0f\u908f\u8f2f\u4e4b\u9593\u7684\u6e05\u6670\u754c\u7dda\u3002<\/p>\n\n\n\n
\u91cd\u9ede<\/h2>\n\n\n\n
\u4e0a\u8ff0\u6240\u6709\u5de5\u4f5c\uff08\u4ee5\u53ca\u66f4\u591a\uff09\u82b1\u4e86\u6211\u5011\u7531\u4e09\u540d\u5de5\u7a0b\u5e2b\u3001\u4e00\u540d\u8a2d\u8a08\u5e2b\u3001\u4e00\u540d\u7522\u54c1\u7d93\u7406\u548c\u4e00\u540d\u54c1\u8cea\u6aa2\u67e5\u5de5\u7a0b\u5e2b\u7d44\u6210\u7684\u5718\u968a\u5927\u7d04\u4e09\u500b\u6708\u7684\u6642\u9593\u624d\u5b8c\u6210\u3002 \u60a8\u53ef\u4ee5\u5728\u6b64\u8655\u67e5\u770b\u6211\u5011\u7528\u65bc\u9078\u64c7\u591a\u500b\u6b65\u9a5f\u7684\u53f2\u8a69\uff0c\u4ee5\u53ca\u7528\u65bc\u6279\u91cf\u7de8\u8f2f\u8868\u55ae\u7279\u5b9a\u5de5\u4f5c\u7684\u53f2\u8a69\u3002 \u6211\u5011\u7684\u6240\u6709\u5de5\u4f5c\u90fd\u662f\u958b\u6e90\u7684\uff0c\u56e0\u6b64\u8acb\u96a8\u610f\u700f\u89bd\u6211\u5011\u7684\u7a0b\u5f0f\u78bc\u5eab\u3002<\/p>\n\n\n\n
\u5728\u958b\u59cb\u958b\u767c\u6b64\u529f\u80fd\u4e4b\u524d\uff0c\u6211\u5011\u554f\u81ea\u5df1\u6574\u500b\u5b63\u5ea6\u7684\u6295\u8cc7\u662f\u5426\u503c\u5f97\u3002 \u7531\u65bc\u6279\u91cf\u7de8\u8f2f\u662f\u8fc4\u4eca\u70ba\u6b62\u7528\u6236\u6700\u5e38\u898b\u7684\u529f\u80fd\u8acb\u6c42\uff0c\u56e0\u6b64\u6211\u5011\u6700\u7d42\u6c7a\u5b9a\u5982\u6b64\u3002 \u7136\u800c\uff0c\u503c\u5f97\u6ce8\u610f\u7684\u662f\uff0c\u4f7f\u7528\u8005\u60f3\u8981\u540c\u6642\u7de8\u8f2f\u591a\u500b\u6b65\u9a5f\u7684\u539f\u56e0\u662f\u56e0\u70ba\u4ed6\u5011\u7684\u5354\u8b70\u901a\u5e38\u5305\u542b\u8a31\u591a\u6b65\u9a5f\uff0c\u9019\u4e9b\u6b65\u9a5f\u66f4\u5bb9\u6613\u6279\u91cf\u7de8\u8f2f\uff0c\u800c\u4e0d\u662f\u4e00\u6b21\u7de8\u8f2f\u4e00\u500b\u3002 \u96a8\u8457\u8d8a\u4f86\u8d8a\u591a\u7684\u79d1\u5b78\u5bb6\u4f7f\u7528 PD \u4f86\u89e3\u6c7a\u8d8a\u4f86\u8d8a\u8907\u96dc\u7684\u554f\u984c\uff0c\u5305\u542b\u8a31\u591a\u6b65\u9a5f\u7684\u5354\u8b70\u554f\u984c\u5c07\u6703\u589e\u52a0\u3002<\/p>\n\n\n\n
\u5c55\u671b\u672a\u4f86\uff0c\u6211\u5011\u5e0c\u671b\u66f4\u4e86\u89e3\u4f7f\u7528\u8005\u5230\u5e95\u5728\u4f7f\u7528 PD \u5efa\u69cb\u4ec0\u9ebc\uff0c\u4ee5\u53ca\u6211\u5011\u53ef\u4ee5\u63a1\u53d6\u54ea\u4e9b\u63aa\u65bd\u4f86\u5e6b\u52a9\u4ed6\u5011\u6700\u5927\u9650\u5ea6\u5730\u6e1b\u5c11\u5275\u5efa\u6b65\u9a5f\u3002 \u96a8\u8457 PD \u7684\u4e0d\u65b7\u767c\u5c55\u548c\u767c\u5c55\uff0c\u6211\u5011\u5c07\u52aa\u529b\u56de\u7b54\u9019\u4e9b\u554f\u984c\u3002 \u96d6\u7136\u6211\u5011\u5c0d\u6b64\u529f\u80fd\u611f\u5230\u975e\u5e38\u8208\u596e\uff0c\u4f46\u6211\u5011\u7684\u4f7f\u547d\u662f\u8b93\u79d1\u5b78\u5bb6\u66f4\u5feb\u63a1\u53d6\u884c\u52d5\uff0c\u4e26\u89e3\u6c7a\u6211\u5011\u8feb\u5207\u9700\u8981\u4ed6\u5011\u89e3\u6c7a\u7684\u554f\u984c\uff0c\u9019\u9805\u4f7f\u547d\u9084\u9060\u672a\u7d50\u675f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"
Opentrons \u5f88\u9ad8\u8208\u70ba\u5354\u8b70\u8a2d\u8a08\u5668\u767c\u5e03\u6539\u9032\u7684\u6279\u91cf\u7de8\u8f2f\u9078\u9805\u3002 \u4ee5\u4e0b\u662f\u60a8\u9700\u8981\u4e86\u89e3\u7684\u6709\u95dc\u5176\u5de5\u4f5c\u539f\u7406\u7684\u6240\u6709\u8cc7\u8a0a\u3002 […]<\/p>\n","protected":false},"author":3,"featured_media":675,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[40],"tags":[],"class_list":["post-673","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-product-updates"],"yoast_head":"\n
Opentrons \u534f\u8bae\u8bbe\u8ba1\u5668\u66f4\u65b0\uff1a\u6279\u91cf\u7f16\u8f91\u6982\u8ff0 - Opentrons\u4e2d\u56fd\u5b98\u7f51<\/title>\n\n\n\n\n\n\n\n\n\n\n\n\t\n\t\n\t\n\n\n\n\t\n\t\n\t\n