{"id":31167,"date":"2024-11-25T13:26:32","date_gmt":"2024-11-25T05:26:32","guid":{"rendered":"https:\/\/fwq.ai\/blog\/31167\/"},"modified":"2024-11-25T13:26:32","modified_gmt":"2024-11-25T05:26:32","slug":"%e5%be%ae%e4%bf%a1%e5%b0%8f%e7%a8%8b%e5%ba%8f%e7%bb%84%e4%bb%b6%e5%8c%96%e7%9a%84%e8%a7%a3%e5%86%b3%e6%80%9d%e8%b7%af%e5%92%8c%e6%96%b9%e6%b3%95","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/31167\/","title":{"rendered":"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5"},"content":{"rendered":"<p>\u672c\u6587\u4e3b\u8981\u548c\u5927\u5bb6\u5206\u4eab\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\uff0c\u4ece\u5c0f\u7a0b\u5e8f\u57fa\u7840\u5e93\u7248\u672c&nbsp;1.6.3&nbsp;\u5f00\u59cb\uff0c\u5c0f\u7a0b\u5e8f\u652f\u6301\u7b80\u6d01\u7684\u7ec4\u4ef6\u5316\u7f16\u7a0b\u3002\u67e5\u770b\u81ea\u5df1\u4f7f\u7528\u7684\u5c0f\u7a0b\u5e8f\u57fa\u7840\u5e93\u7248\u672c\uff0c\u53ef\u4ee5\u901a\u8fc7\u5728\u5f00\u53d1\u8005\u5de5\u5177\u53f3\u4fa7\u70b9\u51fb\u8be6\u60c5\u67e5\u770b\uff1a\u6700\u57fa\u672c\u7684\u7ec4\u4ef6\u3002<\/p>\n<p>\u5c0f\u7a0b\u5e8f\u7684\u7ec4\u4ef6\uff0c\u5176\u5b9e\u5c31\u662f\u4e00\u4e2a\u76ee\u5f55\uff0c\u8be5\u76ee\u5f55\u9700\u8981\u5305\u542b4\u4e2a\u6587\u4ef6\uff1a<\/p>\n<p>xxx.json<\/p>\n<p>xxx.wxml<\/p>\n<p>xxx.wxss<\/p>\n<p>xxx.js<\/p>\n<p>\u58f0\u660e\u4e00\u4e2a\u7ec4\u4ef6<\/p>\n<p>\u9996\u5148\u9700\u8981\u5728&nbsp;json&nbsp;\u6587\u4ef6\u4e2d\u8fdb\u884c\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u58f0\u660e\uff08\u5c06&nbsp;component&nbsp;\u5b57\u6bb5\u8bbe\u4e3a&nbsp;true&nbsp;\u53ef\u8fd9\u4e00\u7ec4\u6587\u4ef6\u8bbe\u4e3a\u81ea\u5b9a\u4e49\u7ec4\u4ef6\uff09<\/p>\n<pre>{\r\n\"component\":&nbsp;true\r\n}<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u5176\u6b21\uff0c\u5728\u8981\u5f15\u5165\u7ec4\u4ef6\u7684\u9875\u9762\u7684json\u6587\u4ef6\u5185\uff0c\u8fdb\u884c\u5f15\u7528\u58f0\u660e<\/p>\n<pre>{\r\n\"usingComponents\":&nbsp;{\r\n\/\/\u81ea\u5b9a\u4e49\u7684\u7ec4\u4ef6\u540d\u79f0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\uff1a&nbsp;\u7ec4\u4ef6\u8def\u5f84\uff0c\u6ce8\u610f\u662f\u76f8\u5bf9\u8def\u5f84\uff0c\u4e0d\u80fd\u662f\u7edd\u5bf9\u8def\u5f84&nbsp;&nbsp;\r\n\"component-tag-name\":&nbsp;\"path\/to\/the\/custom\/component\"\r\n}\r\n}<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u8fd9\u6837\uff0c\u5728\u4e3b\u9875\u9762\u5c31\u53ef\u4ee5\u4f7f\u7528\u4e86\u3002<\/p>\n<p>\u76f8\u6bd4\u4e8evue\u7684\u7ec4\u4ef6\u5f15\u5165\uff0c\u5c0f\u7a0b\u5e8f\u7684\u65b9\u6848\u66f4\u7b80\u6d01\u3002vue\u7ec4\u4ef6\u5f15\u5165\u662f\u9700\u8981 import \u4e4b\u540e\uff0c\u540c\u65f6\u5728 components \u91cc\u9762\u6ce8\u518c\uff0c\u800c\u5c0f\u7a0b\u5e8f\u7684\u7ec4\u4ef6\u53ea\u9700\u8981\u5728 .json \u91cc\u9762\u6ce8\u518c\uff0c\u5c31\u53ef\u4ee5\u5728 wxml \u91cc\u9762\u4f7f\u7528\u3002<\/p>\n<p>\u4f7f\u7528slot<\/p>\n<p>\u548cvue \u76f8\u540c\uff0c\u5c0f\u7a0b\u5e8f\u4e5f\u6709slot\u6982\u5ff5\u3002<\/p>\n<p>\u5355\u4e00slot<\/p>\n<p>\u5728\u7ec4\u4ef6\u6a21\u677f\u4e2d\u53ef\u4ee5\u63d0\u4f9b\u4e00\u4e2a&nbsp; &nbsp;\u8282\u70b9\uff0c\u7528\u4e8e\u627f\u8f7d\u7ec4\u4ef6\u5f15\u7528\u65f6\u63d0\u4f9b\u7684\u5b50\u8282\u70b9\u3002 <\/p>\n<pre>\/\/&nbsp;\u4e3b\u9875\u9762\u5185\uff0c&lt;addlike&gt;\u662f\u7ec4\u4ef6\r\n&lt;addlike&gt;&lt;text&gt;\u6211\u662f\u88abslot\u63d2\u5165\u7684\u6587\u672c&lt;\/text&gt;&lt;\/addlike&gt;\r\n\/\/&nbsp;addlike&nbsp;\u7ec4\u4ef6\r\n&lt;view&gt;&lt;view&gt;hello,&nbsp;\u8fd9\u91cc\u662f\u7ec4\u4ef6&lt;\/view&gt;&lt;view&gt;hello,&nbsp;{{my_properties}}&lt;\/view&gt;&lt;slot&gt;&lt;\/slot&gt;&lt;\/view&gt;\r\n\/\/&nbsp;\u6e32\u67d3\u540e\r\n&lt;view&gt;&lt;view&gt;hello,&nbsp;\u8fd9\u91cc\u662f\u7ec4\u4ef6&lt;\/view&gt;&lt;view&gt;hello,&nbsp;{{my_properties}}&lt;\/view&gt;&lt;text&gt;\u6211\u662f\u88abslot\u63d2\u5165\u7684\u6587\u672c&lt;\/text&gt;&lt;\/view&gt;&lt;\/addlike&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u591a\u4e2aslot<\/p>\n<p>\u5982\u679c\u9700\u8981\u5728\u7ec4\u4ef6\u5185\u4f7f\u7528\u591a\u4e2aslot\uff0c \u9700\u8981\u5728\u7ec4\u4ef6js\u4e2d\u58f0\u660e\u542f\u7528\uff1a<\/p>\n<pre>Component({\r\n&nbsp;options:&nbsp;{\r\n&nbsp;&nbsp;&nbsp;multipleSlots:&nbsp;true&nbsp;\/\/&nbsp;\u5728\u7ec4\u4ef6\u5b9a\u4e49\u65f6\u7684\u9009\u9879\u4e2d\u542f\u7528\u591aslot\u652f\u6301\r\n},\r\n&nbsp;properties:&nbsp;{&nbsp;\/*&nbsp;...&nbsp;*\/&nbsp;},\r\n&nbsp;methods:&nbsp;{&nbsp;\/*&nbsp;...&nbsp;*\/&nbsp;}\r\n})<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u4f7f\u7528\uff1a<\/p>\n<pre>\/\/&nbsp;\u4e3b\u9875\u9762\r\n&lt;addlike&gt;\r\n\/\/&nbsp;\u5728\u666e\u901a\u7684\u5143\u7d20\u4e0a\u52a0\u5165&nbsp;slot&nbsp;\u5c5e\u6027\uff0c\u6307\u5b9aslotname,&nbsp;\u5c31\u53ef\u4ee5\u53d8\u6210\u5b50\u5143\u7d20\u7684slot\u4e86\r\n&lt;text&gt;\u6211\u662f\u88abslot1\u63d2\u5165\u7684\u6587\u672c&lt;\/text&gt;&lt;text&gt;\u6211\u662f\u88abslot2\u63d2\u5165\u7684\u6587\u672c&lt;\/text&gt;&lt;\/addlike&gt;\r\n\r\n\/\/&nbsp;\u5b50\u9875\u9762\r\n&lt;view&gt;&lt;view&gt;hello,&nbsp;\u8fd9\u91cc\u662f\u7ec4\u4ef6&lt;\/view&gt;&lt;view&gt;hello,&nbsp;{{my_properties}}&lt;\/view&gt;&lt;slot&gt;&lt;\/slot&gt;&lt;slot&gt;&lt;\/slot&gt;&lt;\/view&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>Component\u6784\u9020\u5668<\/p>\n<p>\u521a\u624d\u6211\u4eec\u8bf4\u4e86\uff0c\u4e00\u4e2a\u7ec4\u4ef6\u5185\u5e94\u8be5\u5305\u62ecjs, wxml, wxss, json \u56db\u4e2a\u6587\u4ef6\u3002wxml \u76f8\u5f53\u4e8e\u662f HTML\uff0cwxss \u76f8\u5f53\u4e8e\u662f css, \u90a3\u4e48js \u91cc\u9762\u5e94\u8be5\u5199\u4ec0\u4e48\u5462\uff1f<\/p>\n<p>\u5fae\u4fe1\u5b98\u65b9\u63d0\u4f9b\u7684\u6848\u4f8b\u4e2d\uff1a<\/p>\n<pre>Component({\r\n&nbsp;behaviors:&nbsp;[],\r\n&nbsp;properties:&nbsp;{\r\n},\r\n&nbsp;data:&nbsp;{},&nbsp;\/\/&nbsp;\u79c1\u6709\u6570\u636e\uff0c\u53ef\u7528\u4e8e\u6a21\u7248\u6e32\u67d3\r\n\/\/&nbsp;\u751f\u547d\u5468\u671f\u51fd\u6570\uff0c\u53ef\u4ee5\u4e3a\u51fd\u6570\uff0c\u6216\u4e00\u4e2a\u5728methods\u6bb5\u4e2d\u5b9a\u4e49\u7684\u65b9\u6cd5\u540d\r\n&nbsp;attached:&nbsp;function(){},\r\n&nbsp;moved:&nbsp;function(){},\r\n&nbsp;detached:&nbsp;function(){},\r\n&nbsp;methods:&nbsp;{\r\n&nbsp;&nbsp;&nbsp;onMyButtonTap:&nbsp;function(){\r\n},\r\n&nbsp;&nbsp;&nbsp;_myPrivateMethod:&nbsp;function(){\r\n},\r\n&nbsp;&nbsp;&nbsp;_propertyChange:&nbsp;function(newVal,&nbsp;oldVal)&nbsp;{\r\n}\r\n}\r\n})<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u91cc\u9762\u8c03\u7528\u4e86\u4e00\u4e2aComponent\u6784\u9020\u5668\u3002Component\u6784\u9020\u5668\u53ef\u7528\u4e8e\u5b9a\u4e49\u7ec4\u4ef6\uff0c\u8c03\u7528Component\u6784\u9020\u5668\u65f6\u53ef\u4ee5\u6307\u5b9a\u7ec4\u4ef6\u7684\u5c5e\u6027\u3001\u6570\u636e\u3001\u65b9\u6cd5\u7b49\u3002\u5177\u4f53 Component\u91cc\u9762\u53ef\u4ee5\u653e\u4ec0\u4e48\u4e1c\u897f\uff0c\u5982\u4e0b\u6240\u793a\uff1a<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/\/upload\/image\/801\/670\/556\/1516858713483989.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe\" alt=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe\" \/><\/p>\n<p>\u7ec4\u4ef6\u4e0e\u6570\u636e\u901a\u4fe1<\/p>\n<p>\u7ec4\u4ef6\u5316\u5fc5\u7136\u8981\u6d89\u53ca\u5230\u6570\u636e\u7684\u901a\u4fe1\uff0c\u4e3a\u4e86\u89e3\u51b3\u6570\u636e\u5728\u7ec4\u4ef6\u95f4\u7684\u7ef4\u62a4\u95ee\u9898\uff0cvue, react\uff0cangular \u6709\u4e0d\u540c\u7684\u89e3\u51b3\u65b9\u6848\u3002\u800c\u5c0f\u7a0b\u5e8f\u7684\u89e3\u51b3\u65b9\u6848\u5219\u7b80\u6d01\u5f88\u591a\u3002<\/p>\n<p>\u4e3b\u9875\u9762\u4f20\u5165\u6570\u636e\u5230\u7ec4\u4ef6<\/p>\n<p>properties\u76f8\u5f53\u4e8evue\u7684props\uff0c\u662f\u4f20\u5165\u5916\u90e8\u6570\u636e\u7684\u5165\u53e3\u3002<\/p>\n<pre>\/\/&nbsp;\u4e3b\u9875\u9762\u4f7f\u7528\u7ec4\u4ef6\r\n&lt;a&gt;\r\n&lt;\/a&gt;\r\n\/\/&nbsp;\u7ec4\u4ef6a.js&nbsp;\u5185\r\nComponent({\r\n&nbsp;&nbsp;&nbsp;properties:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add_like:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:Array,\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value:[],\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;observer:function(){\r\n}\r\n}\r\n}\r\n})<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u6ce8\u610f\uff1a \u4f20\u5165\u7684\u6570\u636e\uff0c\u4e0d\u7ba1\u662f\u7b80\u5355\u6570\u636e\u7c7b\u578b\uff0c\u8fd8\u662f\u5f15\u7528\u7c7b\u578b\uff0c\u90fd\u5982\u540c\u503c\u590d\u5236\u4e00\u6837\uff08\u548c\u7ea2\u5b9d\u4e66\u91cc\u9762\u63cf\u8ff0js\u51fd\u6570\u53c2\u6570\u4f20\u5165\u662f\u503c\u590d\u5236\u8fd8\u4e0d\u4e00\u6837\uff0c\u7ea2\u5b9d\u4e66\u91cc\u9762\u7684\u610f\u601d\u662f\uff1a\u7b80\u5355\u6570\u636e\u7c7b\u578b\u76f4\u63a5\u590d\u5236\u6570\u503c\uff0c\u5f15\u7528\u7c7b\u578b\u590d\u5236\u5f15\u7528\uff0c\u4e5f\u5c31\u662f\u8bf4\u5728\u51fd\u6570\u5185\u4fee\u6539\u53c2\u6570\u5bf9\u8c61\u7684\u5c5e\u6027\uff0c\u4f1a\u5f71\u54cd\u5230\u51fd\u6570\u5916\u5bf9\u8c61\u7684\u5c5e\u6027\uff09\u3002<\/p>\n<p>\u5982\u679c\u662fVue\u7684props\uff0c \u5219\u53ef\u4ee5\u901a\u8fc7 .sync \u6765\u540c\u6b65\uff0c\u800c\u5728\u5c0f\u7a0b\u5e8f\u5b50\u7ec4\u4ef6\u91cc\u9762\uff0c\u8c03\u7528this.setData()\u4fee\u6539\u7236\u7ec4\u4ef6\u5185\u7684\u6570\u636e\uff0c\u4e0d\u4f1a\u5f71\u54cd\u5230\u7236\u7ec4\u4ef6\u91cc\u9762\u7684\u6570\u636e, \u4e5f\u5c31\u662f\u8bf4\uff0c\u5b50\u7ec4\u4ef6property\u7684\u4fee\u6539\uff0c\u4eff\u4f5b\u548c\u7236\u7ec4\u4ef6\u6ca1\u6709\u4efb\u4f55\u5173\u7cfb\u3002\u90a3\u4e48\uff0c\u5982\u679c\u662f\u5728\u5b50\u7ec4\u4ef6\u5185\u4fee\u6539\u7236\u7ec4\u4ef6\u7684\u6570\u636e\uff0c\u751a\u81f3\u662f\u4fee\u6539\u5144\u5f1f\u7ec4\u4ef6\u5185\u7684\u6570\u636e\uff0c\u6709\u6ca1\u6709\u7b80\u5355\u7684\u65b9\u6cd5\u5462\uff1f\u4e0b\u9762\u4f1a\u6709\u8bb2\u5230<\/p>\n<p>\u7ec4\u4ef6\u4f20\u51fa\u6570\u636e\u5230\u4e3b\u9875\u9762<\/p>\n<p>\u548cvue\u7c7b\u4f3c\uff0c\u7ec4\u4ef6\u95f4\u4ea4\u4e92\u7684\u4e3b\u8981\u5f62\u5f0f\u662f\u81ea\u5b9a\u4e49\u4e8b\u4ef6\u3002<\/p>\n<p>\u7ec4\u4ef6\u901a\u8fc7&nbsp;this.triggerEvent()&nbsp;\u89e6\u53d1\u81ea\u5b9a\u4e49\u4e8b\u4ef6\uff0c\u4e3b\u9875\u9762\u5728\u7ec4\u4ef6\u4e0a&nbsp;bind:component_method=&#8221;main_page_mehod&#8221;&nbsp;\u6765\u63a5\u6536\u81ea\u5b9a\u4e49\u4e8b\u4ef6\u3002<\/p>\n<p>\u5176\u4e2d\uff0cthis.triggerEvent()&nbsp;\u65b9\u6cd5\u63a5\u6536\u81ea\u5b9a\u4e49\u4e8b\u4ef6\u540d\u79f0\u5916\uff0c\u8fd8\u63a5\u6536\u4e24\u4e2a\u5bf9\u8c61\uff0ceventDetail&nbsp;\u548c&nbsp;eventOptions\u3002<\/p>\n<pre>\/\/&nbsp;\u5b50\u7ec4\u4ef6\u89e6\u53d1\u81ea\u5b9a\u4e49\u4e8b\u4ef6\r\nontap&nbsp;()&nbsp;{\r\n\/\/&nbsp;\u6240\u6709\u8981\u5e26\u5230\u4e3b\u9875\u9762\u7684\u6570\u636e\uff0c\u90fd\u88c5\u5728eventDetail\u91cc\u9762\r\nvar&nbsp;eventDetail&nbsp;=&nbsp;{\r\nname:'sssssssss',\r\ntest:[1,2,3]\r\n}\r\n\/\/&nbsp;\u89e6\u53d1\u4e8b\u4ef6\u7684\u9009\u9879&nbsp;bubbles\u662f\u5426\u5192\u6ce1\uff0ccomposed\u662f\u5426\u53ef\u7a7f\u8d8a\u7ec4\u4ef6\u8fb9\u754c\uff0ccapturePhase&nbsp;\u662f\u5426\u6709\u6355\u83b7\u9636\u6bb5\r\nvar&nbsp;eventOption&nbsp;=&nbsp;{\r\ncomposed:&nbsp;true\r\n}\r\nthis.triggerEvent('click_btn',&nbsp;eventDetail,&nbsp;eventOption)\r\n}\r\n\/\/&nbsp;\u4e3b\u9875\u9762\u91cc\u9762\r\nmain_page_ontap&nbsp;(eventDetail)&nbsp;{\r\n&nbsp;&nbsp;&nbsp;console.log(eventDetail)\r\n\/\/&nbsp;eventDetail\r\n\/\/&nbsp;changedTouches\r\n\/\/&nbsp;currentTarget\r\n\/\/&nbsp;target\r\n\/\/&nbsp;type\r\n\/\/&nbsp;\u2026\u2026\r\n\/\/&nbsp;detail&nbsp;&nbsp;&nbsp;\u54c8\u54c8\uff0c\u6240\u6709\u7684\u5b50\u7ec4\u4ef6\u7684\u6570\u636e\uff0c\u90fd\u901a\u8fc7\u8be5\u53c2\u6570\u7684detail\u5c5e\u6027\u66b4\u9732\u51fa\u6765\r\n}<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u7ec4\u4ef6\u4e4b\u95f4\u6570\u636e\u901a\u4fe1<\/p>\n<p>\u548cvue\u63d0\u51fa\u7684vuex\u7684\u89e3\u51b3\u65b9\u6848\u4e0d\u540c\uff0c\u5c0f\u7a0b\u5e8f\u7684\u7ec4\u4ef6\u95f4\u7684\u901a\u8baf\u7b80\u5355\u5c0f\u5de7\u3002\u4f60\u53ef\u4ee5\u548c\u4e3b\u9875\u9762\u4e0e\u7ec4\u4ef6\u901a\u8baf\u4e00\u6837\uff0c\u4f7f\u7528\u81ea\u5b9a\u4e49\u4e8b\u4ef6\u6765\u8fdb\u884c\u901a\u8baf\uff0c\u5f53\u7136\u66f4\u7b80\u5355\u65b9\u4fbf\u7684\u65b9\u6cd5\uff0c\u662f\u4f7f\u7528\u5c0f\u7a0b\u5e8f\u63d0\u4f9b\u7684relations.<\/p>\n<p>relations \u662fComponent \u6784\u9020\u51fd\u6570\u4e2d\u7684\u4e00\u4e2a\u5c5e\u6027\uff0c\u53ea\u8981\u4e24\u4e2a\u7ec4\u4ef6\u7684relations \u5c5e\u6027\u4ea7\u751f\u5173\u8054\uff0c\u4ed6\u4eec\u4e24\u4e2a\u4e4b\u95f4\u5c31\u53ef\u4ee5\u6355\u83b7\u5230\u5bf9\u65b9\uff0c\u5e76\u4e14\u53ef\u4ee5\u76f8\u4e92\u8bbf\u95ee\uff0c\u4fee\u6539\u5bf9\u65b9\u7684\u5c5e\u6027\uff0c\u5982\u540c\u4fee\u6539\u81ea\u5df1\u7684\u5c5e\u6027\u4e00\u6837\u3002<\/p>\n<pre>Component({\r\n&nbsp;&nbsp;relations:{\r\n'.\/path_to_b':&nbsp;{&nbsp;\/\/&nbsp;'.\/path_to_b'\u662f\u5bf9\u65b9\u7ec4\u4ef6\u7684\u76f8\u5bf9\u8def\u5f84\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;'child',&nbsp;\/\/&nbsp;&nbsp;type\u53ef\u9009\u62e9\u4e24\u7ec4\uff1aparent\u548cchild\u3001ancestor\u548cdescendant\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;linked:function(target){&nbsp;}&nbsp;\/\/&nbsp;\u94a9\u5b50\u51fd\u6570\uff0c\u5728\u7ec4\u4ef6linked\u65f6\u5019\u88ab\u8c03\u7528&nbsp;target\u662f\u7ec4\u4ef6\u7684\u5b9e\u4f8b\uff0c\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;linkChanged:&nbsp;function(target){}\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unlinked:&nbsp;function(target){}\r\n}\r\n},\r\n})<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u6bd4\u5982\u8bf4\uff0c\u6709\u4e24\u4e2a\u7ec4\u4ef6\u5982\u4ee3\u7801\u6240\u793a\uff1a<\/p>\n<pre>\/\/&nbsp;\u7ec4\u4ef6a&nbsp;slot&nbsp;\u5305\u542b\u4e86\u7ec4\u4ef6b&lt;a&gt;&lt;b&gt;&lt;\/b&gt;&lt;\/a&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u4ed6\u4eec\u4e4b\u95f4\u7684\u5173\u7cfb\u5982\u4e0b\u56fe\u6240\u793a\uff1a<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/\/upload\/image\/725\/755\/278\/1516858737235265.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe1\" alt=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe1\" \/><\/p>\n<p>\u4e24\u4e2a\u7ec4\u4ef6\u6355\u83b7\u5230\u5bf9\u65b9\u7ec4\u4ef6\u7684\u5b9e\u4f8b\uff0c\u662f\u901a\u8fc7 this.getRelationNodes(&#8216;.\/path_to_a&#8217;)\u65b9\u6cd5\u3002\u65e2\u7136\u83b7\u53d6\u5230\u4e86\u5bf9\u65b9\u7ec4\u4ef6\u7684\u5b9e\u4f8b\uff0c\u90a3\u4e48\u5c31\u53ef\u4ee5\u8bbf\u95ee\u5230\u5bf9\u65b9\u7ec4\u4ef6\u4e0a\u7684data, \u4e5f\u53ef\u4ee5\u8bbe\u7f6e\u5bf9\u65b9\u7ec4\u4ef6\u4e0a\u7684data, \u4f46\u662f\u4e0d\u80fd\u8c03\u7528\u5bf9\u65b9\u7ec4\u4ef6\u4e0a\u7684\u65b9\u6cd5\u3002<\/p>\n<pre>\/\/&nbsp;\u5728a&nbsp;\u7ec4\u4ef6\u4e2d\r\nComponent({\r\n&nbsp;&nbsp;relations:{\r\n'.\/path_to_b':&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;'child',\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;linked:function(target){&nbsp;}&nbsp;\/\/&nbsp;target\u662f\u7ec4\u4ef6b\u7684\u5b9e\u4f8b\uff0c\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;linkChanged:&nbsp;function(target){}\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unlinked:&nbsp;function(target){}\r\n}\r\n},\r\n&nbsp;&nbsp;methods:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test&nbsp;()&nbsp;{\r\nvar&nbsp;nodes&nbsp;=&nbsp;this.getRelationNodes('.\/path_to_b')\r\nvar&nbsp;component_b&nbsp;=&nbsp;nodes[0];\r\n\r\n\/\/&nbsp;\u83b7\u53d6\u5230b\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;console.log(component_b.data.name)\r\n\r\n\/\/&nbsp;\u8bbe\u7f6e\u7236\u7ec4\u4ef6\u7684\u6570\u636e\r\n\/\/&nbsp;\u8fd9\u6837\u7684\u8bbe\u7f6e\u662f\u65e0\u6548\u7684\r\nthis.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;component_b.data.name:'ss'\r\n})\r\n\/\/&nbsp;\u9700\u8981\u8c03\u7528\u5bf9\u65b9\u7ec4\u4ef6\u7684setData()\u65b9\u6cd5\u6765\u8bbe\u7f6e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;component_b.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:'ss'\r\n})\r\n}\r\n}\r\n})\r\n\r\n\/\/&nbsp;\u5728b&nbsp;\u7ec4\u4ef6\u91cc\u9762\r\nComponent({\r\n&nbsp;&nbsp;relations:{\r\n'.\/path_to_a':&nbsp;{&nbsp;\/\/\u6ce8\u610f\uff01\u5fc5\u987b\u53cc\u65b9\u7ec4\u4ef6\u90fd\u58f0\u660erelations\u5c5e\u6027\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:'parent'\r\n}\r\n},\r\n&nbsp;&nbsp;data:&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'dudu'\r\n}\r\n})\r\n\u6ce8\u610f\uff1a1.&nbsp;\u4e3b\u9875\u9762\u4f7f\u7528\u7ec4\u4ef6\u7684\u65f6\u5019\uff0c\u4e0d\u80fd\u6709\u6570\u5b57\uff0c\u6bd4\u5982\u8bf4&nbsp;&lt;component_sub1&gt;&nbsp;\u6216&nbsp;&lt;component_sub_1&gt;\uff0c\u53ef\u4ee5\u5728\u4e3b\u9875\u9762\u7684json&nbsp;\u91cc\u9762\u8bbe\u7f6e\u4e00\u4e2a\u65b0\u540d\u5b57\r\n{\r\n\"usingComponents\":{\r\n\"test_component_subb\":&nbsp;\"..\/..\/..\/components\/test_component_sub2\/test_component_sub2\"\r\n}\r\n}&lt;\/component_sub_1&gt;&lt;\/component_sub1&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>2. relations \u91cc\u9762\u7684\u8def\u5f84\uff0c\u6bd4\u5982\u8bf4\u8fd9\u91cc\uff1a<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/\/upload\/image\/917\/358\/169\/1516858755299976.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe2\" alt=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe2\" \/><\/p>\n<p>\u662f\u5bf9\u65b9\u7ec4\u4ef6\u771f\u5b9e\u7684\u76f8\u5bf9\u8def\u5f84\uff0c\u800c\u4e0d\u662f\u7ec4\u4ef6\u95f4\u7684\u903b\u8f91\u8def\u5f84\u3002<\/p>\n<p>3. \u5982\u679crelations \u6ca1\u6709\u5173\u8054\uff0c\u90a3\u4e48 this.getRelationNodes \u662f\u83b7\u53d6\u4e0d\u5230\u5bf9\u65b9\u7ec4\u4ef6\u7684<\/p>\n<p>4. \u672c\u7ec4\u4ef6\u65e0\u6cd5\u83b7\u53d6\u672c\u7ec4\u4ef6\u7684\u5b9e\u4f8b\uff0c\u4f7f\u7528this.getRelatonsNodes(&#8216;.\/ path_to_self &#8216;) \u4f1a\u8fd4\u56de\u4e00\u4e2anull<\/p>\n<p>4. type \u53ef\u4ee5\u9009\u62e9\u7684&nbsp;parent&nbsp;\u3001&nbsp;child&nbsp;\u3001&nbsp;ancestor&nbsp;\u3001&nbsp;descendant&nbsp;<\/p>\n<p>\u73b0\u5728\u6211\u4eec\u5df2\u7ecf\u53ef\u4ee5\u505a\u5230\u4e86\u4e24\u4e2a\u7ec4\u4ef6\u4e4b\u95f4\u7684\u6570\u636e\u4f20\u9012\uff0c\u90a3\u4e48\u5982\u4f55\u5728\u591a\u4e2a\u7ec4\u4ef6\u95f4\u4f20\u9012\u6570\u636e\u5462\uff1f<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/\/upload\/image\/897\/370\/241\/1516858796914864.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe3\" alt=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe3\" \/><\/p>\n<p>\u5982\u4e0a\u56fe\u6240\u793a\uff0c\u540c\u7ea7\u7684\u7ec4\u4ef6b \u548c\u540c\u7ea7\u7684\u7ec4\u4ef6c , b \u548c c \u4e4b\u95f4\u4e0d\u53ef\u4ee5\u76f4\u63a5\u83b7\u53d6\uff0cb\u53ef\u4ee5\u83b7\u53d6\u5230a\uff0c c \u4e5f\u53ef\u4ee5\u83b7\u53d6\u5230a\uff0c\u800ca\u53ef\u4ee5\u76f4\u63a5\u83b7\u53d6\u5230 b \u548c c\u3002\u6240\u4ee5\uff0c\u5982\u679c\u60f3\u83b7\u53d6\u5230\u5144\u5f1f\u5143\u7d20\uff0c\u9700\u8981\u5148\u83b7\u53d6\u5230\u7956\u5148\u8282\u70b9\uff0c\u7136\u540e\u518d\u901a\u8fc7\u7956\u5148\u8282\u70b9\u83b7\u53d6\u5144\u5f1f\u8282\u70b9<\/p>\n<p>\u6211\u5728\u7ec4\u4ef6b&nbsp;\u91cc\u9762\uff0c\u6211\u9700\u8981\u5148\u627e\u5230\u7956\u5148\u7ec4\u4ef6a\u7684\u5b9e\u4f8b\uff0c\u7136\u540e\u7528\u7956\u5148\u7ec4\u4ef6a\u7684\u5b9e\u4f8b\u7684getRelationNodes\u65b9\u6cd5\u83b7\u53d6\u5230\u7ec4\u4ef6c\u7684\u5b9e\u4f8b\u3002<\/p>\n<p>\u770b\u89c1\u6ca1\uff1f\u6050\u6015\u6211\u4eec\u53c8\u8981\u5199\u4e00\u5927\u5806\u91cd\u590d\u6027\u7684\u4ee3\u7801\u4e86\u3002<\/p>\n<p>\u5e78\u597d\uff0c\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u8fd8\u63d0\u4f9b\u4e86behavior \u5c5e\u6027, \u8fd9\u4e2a\u5c5e\u6027\u76f8\u5f53\u4e8e mixin\uff0c\u5f88\u5bb9\u6613\u7406\u89e3\u7684\uff0c\u662f\u63d0\u9ad8\u4ee3\u7801\u590d\u7528\u6027\u7684\u4e00\u79cd\u65b9\u6cd5\u3002<\/p>\n<p>\u601d\u8def\uff1a<\/p>\n<p>\u5047\u8bbe\u76ee\u524d\u6709\u4e09\u4e2a\u7ec4\u4ef6\uff0c\u7ec4\u4ef6a, \u7ec4\u4ef6b, \u7ec4\u4ef6c\uff0c \u5176\u4e2d\u7ec4\u4ef6b\u548c\u7ec4\u4ef6c\u662f\u5144\u5f1f\u7ec4\u4ef6\uff0c\u7ec4\u5efaa\u662fb\u548cc\u7684\u5144\u5f1f\u7ec4\u4ef6\u3002\u4e3a\u4e86\u51cf\u5c11\u4ee3\u7801\u7684\u91cd\u590d\u6027\uff0c\u6211\u4eec\u628a\u83b7\u53d6\u7236\u7ec4\u4ef6\u7684\u65b9\u6cd5\uff0c\u548c\u83b7\u53d6\u5144\u5f1f\u7ec4\u4ef6\u7684\u65b9\u6cd5\u5c01\u88c5\u4e00\u4e0b\uff0c\u5c01\u88c5\u5728 behavior \u7684 methods \u4e2d\u3002\u53ea\u8981\u662f\u5f15\u5165\u8be5behavior\u7684\u7ec4\u4ef6\uff0c\u90fd\u53ef\u4ee5\u4fbf\u6377\u7684\u8c03\u7528\u65b9\u6cd5\u3002<\/p>\n<p>\u5b9e\u73b0\uff1a<\/p>\n<p>\u65b0\u5efa\u4e00\u4e2abehavior\u6587\u4ef6\uff0c\u547d\u540d\u65e0\u6240\u8c13\uff0c\u6bd4\u5982\u8bf4relation_behavior.js<\/p>\n<pre>\/\/&nbsp;\u5728&nbsp;get_relation.js&nbsp;\u6587\u4ef6\u91cc\u9762\r\nmodule.exports&nbsp;=&nbsp;Behavior({\r\nmethods:{\r\n\/\/&nbsp;\u83b7\u53d6\u7236\u7ec4\u4ef6\u5b9e\u4f8b\u7684\u5feb\u6377\u65b9\u6cd5\r\n_parent&nbsp;()&nbsp;{\r\n\/\/&nbsp;\u5982\u679c\u6839\u636e\u8be5\u8def\u5f84\u83b7\u53d6\u5230acestor\u7ec4\u4ef6\u4e3anull\uff0c\u5219\u8bf4\u660ethis\u4e3aancesor\r\nvar&nbsp;parentNode&nbsp;=&nbsp;this.getRelationNodes('..\/record_item\/record_item')\r\nif&nbsp;(parentNode&amp;amp;&amp;amp;parentNode.length&nbsp;!==&nbsp;0)&nbsp;{\r\nreturn&nbsp;parentNode[0]\r\n}&nbsp;else&nbsp;{\r\nreturn&nbsp;this\r\n}\r\n},\r\n\/\/&nbsp;\u83b7\u53d6\u5144\u5f1f\u7ec4\u4ef6\u5b9e\u4f8b\u7684\u5feb\u6377\u65b9\u6cd5\r\n_sibling(name)&nbsp;{\r\nvar&nbsp;node&nbsp;=&nbsp;this._parent().getRelationNodes(`..\/${name}\/${name}`)\r\nif&nbsp;(node&nbsp;&amp;amp;&amp;amp;node.length&nbsp;&amp;gt;&nbsp;0)&nbsp;{\r\nreturn&nbsp;node[0]\r\n}\r\n}\r\n}\r\n})<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u7136\u540e\u5728\u7ec4\u4ef6b, \u548c \u7ec4\u4ef6c \u4e0a\u5f15\u5165\u8be5behavior\uff0c\u5e76\u4e14\u8c03\u7528\u65b9\u6cd5\uff0c\u83b7\u53d6\u7236\u7ec4\u4ef6\u548c\u5144\u5f1f\u7ec4\u4ef6\u7684\u5b9e\u4f8b<\/p>\n<pre>\/\/&nbsp;\u7ec4\u4ef6b\u4e2d\r\nvar&nbsp;relation_behavior&nbsp;=&nbsp;require('.\/path_to_relation_behavior')\r\nComponent({\r\n&nbsp;&nbsp;&nbsp;behaviors:[relation_behavior],\r\n&nbsp;&nbsp;&nbsp;methods:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test&nbsp;()&nbsp;{\r\n\/\/&nbsp;\u83b7\u5f97\u7236\u7ec4\u4ef6\u7684\u5b9e\u4f8b\r\nlet&nbsp;parent&nbsp;=&nbsp;this._parent()\r\n\/\/&nbsp;\u8bbf\u95ee\u7236\u7ec4\u4ef6\u7684\u6570\u636ed\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;console.log(parent.data.name)\r\n\/\/&nbsp;\u4fee\u6539\u7236\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parent.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'test1'\r\n})\r\n\/\/&nbsp;\u83b7\u5f97\u5144\u5f1f\u7ec4\u4ef6\u7684\u5b9e\u4f8b\r\nlet&nbsp;sibling&nbsp;=&nbsp;this._sibling('c')\r\n\/\/&nbsp;\u8bbf\u95ee\u5144\u5f1f\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;console.log(sibling.data.name)\r\n\/\/&nbsp;\u4fee\u6539\u5144\u5f1f\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sibling.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:\"test\"\r\n})\r\n}\r\n}\r\n})\r\n\/\/&nbsp;\u7ec4\u4ef6c\u4e2d\r\nvar&nbsp;relation_behavior&nbsp;=&nbsp;require('.\/path_to_relation_behavior')\r\nComponent({\r\n&nbsp;&nbsp;&nbsp;behaviors:[relation_behavior],\r\n&nbsp;&nbsp;&nbsp;methods:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test&nbsp;()&nbsp;{\r\n\/\/&nbsp;\u83b7\u5f97\u7236\u7ec4\u4ef6\u7684\u5b9e\u4f8b\r\nlet&nbsp;parent&nbsp;=&nbsp;this._parent()\r\n\/\/&nbsp;\u8bbf\u95ee\u7236\u7ec4\u4ef6\u7684\u6570\u636ed\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;console.log(parent.data.name)\r\n\/\/&nbsp;\u4fee\u6539\u7236\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parent.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'test1'\r\n})\r\n\/\/&nbsp;\u83b7\u5f97\u5144\u5f1f\u7ec4\u4ef6\u7684\u5b9e\u4f8b\r\nlet&nbsp;sibling&nbsp;=&nbsp;this._sibling('b')\r\n\/\/&nbsp;\u8bbf\u95ee\u5144\u5f1f\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;console.log(sibling.data.name)\r\n\/\/&nbsp;\u4fee\u6539\u5144\u5f1f\u7ec4\u4ef6\u7684\u6570\u636e\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sibling.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:\"test\"\r\n})\r\n}\r\n}\r\n})<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u540c\u65f6\u9700\u8981\u6ce8\u610f\uff0cc\u548cb\u4e24\u4e2a\u7ec4\u4ef6\uff0c\u4ecerelations\u5c5e\u6027\u7684\u89d2\u5ea6\u6765\u8bf4\uff0c\u662fa\u7684\u540e\u4ee3\u7ec4\u4ef6\u3002<\/p>\n<p>\u4f46\u662f\u7ec4\u4ef6b\u548c\u7ec4\u4ef6c \u6240\u5904\u7684\u4f5c\u7528\u57df, \u90fd\u662f\u4e3b\u9875\u9762\u7684\u4f5c\u7528\u57df\uff0c\u4f20\u5165\u7684property\u90fd\u662f\u4e3b\u9875\u9762\u7684property\uff0c\u8fd9\u6837\u5c31\u4fdd\u8bc1\u4e86\u7ec4\u4ef6\u6570\u636e\u7684\u7075\u6d3b\u6027\u3002relations \u50cf\u4e00\u4e2a\u9690\u5f62\u7684\u94fe\u5b50\u4e00\u6837\u628a\u4e00\u5806\u7ec4\u4ef6\u5173\u8054\u8d77\u6765\uff0c\u5173\u8054\u8d77\u6765\u7684\u7ec4\u4ef6\u53ef\u4ee5\u76f8\u4e92\u8bbf\u95ee\uff0c\u4fee\u6539\u5bf9\u65b9\u7684\u6570\u636e\uff0c\u4f46\u662f\u6bcf\u4e00\u4e2a\u7ec4\u4ef6\u90fd\u53ef\u4ee5\u4ece\u5916\u754c\u72ec\u7acb\u7684\u83b7\u53d6\u6570\u636e\u3002<\/p>\n<p>\u770b\u4e86\u8fd9\u4e48\u591a\u7406\u8bba\u7684\u4e1c\u897f\uff0c\u8fd8\u662f\u9700\u8981\u4e00\u4e2a\u5177\u4f53\u7684\u573a\u666f\u6765\u5e94\u7528\u3002<\/p>\n<p>\u6bd4\u5982\u8bf4\uff0c\u6211\u4eec\u6709\u4e2a\u4e00\u4e2a\u5206\u4eab\u8bb0\u5f55\u56fe\u7247\u5fc3\u60c5\u7684\u9875\u9762\uff0c\u5f53\u7528\u6237\u70b9\u51fb\u3010\u70b9\u8d5e\u3011\u7684\u6309\u94ae\u65f6\u5019\uff0c\u8be5\u5fc3\u60c5\u7684\u8bb0\u5f55 \u70b9\u8d5e\u6309\u94ae\u4f1a\u53d8\u7ea2\uff0c\u4e0b\u9762\u7684\u4e00\u680f\u4f4d\u7f6e\u4f1a\u591a\u51fa\u70b9\u8d5e\u4eba\u7684\u540d\u5b57\u3002<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/\/upload\/image\/292\/480\/241\/1516858827405568.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe4\" alt=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe4\" \/><\/p>\n<p>\u5982\u679c\u4e0d\u901a\u8fc7\u7ec4\u4ef6\u5316\uff0c\u5f88\u53ef\u80fd\u7684\u505a\u6cd5\u662f \u4fee\u6539\u4e00\u4e2a\u70b9\u8d5e\u6309\u94ae\uff0c\u7136\u540e\u904d\u5386\u6570\u636e\u66f4\u65b0\u6570\u636e\uff0c\u6700\u540e\u6240\u6709\u8bb0\u5f55\u5217\u8868\u7684\u72b6\u6001\u90fd\u4f1a\u88ab\u91cd\u65b0\u6e32\u67d3\u4e00\u904d\u3002<\/p>\n<p>\u5982\u679c\u662f\u901a\u8fc7\u7ec4\u4ef6\u5316\u62c6\u5206\uff1a\u628a\u70b9\u8d5e\u7684\u6309\u94ae\u5c01\u88c5\u4e3a&nbsp;\u7ec4\u4ef6b, \u4e0b\u9762\u70b9\u8d5e\u4eba\u7684\u6846\u5c01\u88c5\u4e3a\u7ec4\u4ef6c,&nbsp;\u6bcf\u4e00\u4e2a\u5fc3\u60c5\u8bb0\u5f55\u90fd\u662f\u4e00\u4e2a\u7ec4\u4ef6a<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/\/upload\/image\/428\/471\/525\/1516858850612992.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe5\" alt=\"\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u63d2\u56fe5\" \/><\/p>\n<p>\u4e0b\u9762\u662f\u4ee3\u7801\u5b9e\u73b0<\/p>\n<pre>\/\/&nbsp;\u5728\u4e3b\u9875\u9762\u5185\r\n&lt;view&gt;&lt;a&gt;\r\n&lt;b&gt;&lt;\/b&gt;\r\n&lt;c&gt;&lt;\/c&gt;&lt;\/a&gt;\r\n&lt;view&gt;\r\n\/\/&nbsp;\u5728\u7ec4\u4ef6a\u5185\r\nvar&nbsp;behavior_relation&nbsp;=&nbsp;require('..\/..\/relation_behavior.js)&nbsp;&nbsp;\/\/\u8fd9\u91cc\u5f15\u5165\u4e0a\u6587\u8bf4\u7684Behavior\r\nComponent({\r\n&nbsp;&nbsp;&nbsp;behaviors:[behavior_relation],\r\n&nbsp;&nbsp;&nbsp;relations:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'..\/b\/b':{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;'descendant'\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;}\r\n})\r\n\/\/&nbsp;\u5728\u7ec4\u4ef6b\u5185\r\nvar&nbsp;behavior_relation&nbsp;=&nbsp;require('..\/..\/relation_behavior.js)&nbsp;\/\/\u8fd9\u91cc\u5f15\u5165\u4e0a\u6587\u8bf4\u7684Behavior\r\nComponent({\r\n&nbsp;&nbsp;&nbsp;behaviors:[behavior_relation]\r\n&nbsp;&nbsp;&nbsp;relations:{\r\n'..\/a\/a':{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;'ancestor'\r\n}\r\n},\r\n&nbsp;&nbsp;&nbsp;data:&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is_like:&nbsp;false&nbsp;\/\/\u63a7\u5236\u70b9\u8d5e\u56fe\u6807\u7684\u72b6\u6001\r\n},\r\n&nbsp;&nbsp;&nbsp;methods:{\r\n\/\/&nbsp;\u5f53\u7528\u6237\u70b9\u8d5e\u7684\u65f6\u5019\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;onClick&nbsp;()&nbsp;{\r\n\/\/&nbsp;&nbsp;\u4fee\u6539\u672c\u7ec4\u4ef6\u7684\u72b6\u6001\r\nthis.setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is_like:&nbsp;true\r\n})\r\n\/\/&nbsp;\u4fee\u6539&nbsp;c&nbsp;\u7ec4\u4ef6\u7684\u6570\u636e\r\nthis._sibling('c').setData({\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;likeStr:&nbsp;this._sibling('c').data.likeStr&nbsp;+&nbsp;'\u6211'&nbsp;\r\n})\r\n}\r\n}\r\n})\r\n\/\/&nbsp;\u5728\u7ec4\u4ef6c\u5185\r\nvar&nbsp;behavior_relation&nbsp;=&nbsp;require('..\/..\/relation_behavior.js)&nbsp;&nbsp;\/\/\u8fd9\u91cc\u5f15\u5165\u4e0a\u6587\u8bf4\u7684Behavior\r\nComponent({\r\n&nbsp;&nbsp;&nbsp;behaviors:[behavior_relation],\r\n&nbsp;&nbsp;&nbsp;relations:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'..\/a\/a':{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;'ancestor'\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;},\r\n&nbsp;&nbsp;&nbsp;data:{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;likeStr:'\u6653\u7ea2\uff0c\u5c0f\u660e'\r\n&nbsp;&nbsp;&nbsp;}\r\n})&lt;\/view&gt;&lt;\/view&gt;<\/pre>\n<p> \u767b\u5f55\u540e\u590d\u5236 <\/p>\n<p>\u8fd9\u6837\uff0c\u7ec4\u4ef6b \u53ef\u4ee5\u4fee\u6539\u7ec4\u4ef6c\u4e2d\u7684\u6570\u636e\u3002\u540c\u65f6\uff0c\u7ec4\u4ef6b \u548c \u7ec4\u4ef6c \u53c8\u53ef\u4ee5\u901a\u8fc7 properties \u548c \u4e8b\u4ef6\u7cfb\u7edf\uff0c\u548c\u4e3b\u9875\u9762\u4fdd\u6301\u72ec\u7acb\u7684\u6570\u636e\u901a\u4fe1\u3002<\/p>\n<p>\u76f8\u5173\u63a8\u8350\uff1a<\/p>\n<\/p>\n<\/p>\n<p>\u4ee5\u4e0a\u5c31\u662f\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u672c\u6587\u4e3b\u8981\u548c\u5927\u5bb6\u5206\u4eab\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\u7ec4\u4ef6\u5316\u7684\u89e3\u51b3\u601d\u8def\u548c\u65b9\u6cd5\uff0c\u4ece\u5c0f\u7a0b\u5e8f\u57fa\u7840\u5e93\u7248\u672c&nbsp;1.6.3&nbsp;\u5f00\u59cb\uff0c\u5c0f\u7a0b\u5e8f\u652f\u6301\u7b80\u6d01\u7684\u7ec4\u4ef6\u5316\u7f16\u7a0b\u3002\u67e5\u770b\u81ea\u5df1\u4f7f\u7528\u7684\u5c0f\u7a0b\u5e8f\u57fa\u7840\u5e93\u7248\u672c\uff0c\u53ef\u4ee5\u901a\u8fc7\u5728\u5f00\u53d1\u8005\u5de5\u5177\u53f3\u4fa7\u70b9\u51fb\u8be6\u60c5\u67e5\u770b\uff1a\u6700\u57fa\u672c\u7684\u7ec4\u4ef6\u3002 \u5c0f\u7a0b\u5e8f\u7684\u7ec4\u4ef6\uff0c\u5176\u5b9e\u5c31\u662f\u4e00\u4e2a\u76ee\u5f55\uff0c\u8be5\u76ee\u5f55\u9700\u8981\u5305\u542b4\u4e2a\u6587\u4ef6\uff1a xxx.json xxx.wxml xxx.wxss xxx.js \u58f0\u660e\u4e00\u4e2a\u7ec4\u4ef6 \u9996\u5148\u9700\u8981\u5728&nbsp;json&nbsp;\u6587\u4ef6\u4e2d\u8fdb\u884c\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u58f0\u660e\uff08\u5c06&nbsp;component&nbsp;\u5b57\u6bb5\u8bbe\u4e3a&nbsp;true&nbsp;\u53ef\u8fd9\u4e00\u7ec4\u6587\u4ef6\u8bbe\u4e3a\u81ea\u5b9a\u4e49\u7ec4\u4ef6\uff09 { &#8220;component&#8221;:&nbsp;true } \u767b\u5f55\u540e\u590d\u5236 \u5176\u6b21\uff0c\u5728\u8981\u5f15\u5165\u7ec4\u4ef6\u7684\u9875\u9762\u7684json\u6587\u4ef6\u5185\uff0c\u8fdb\u884c\u5f15\u7528\u58f0\u660e { &#8220;usingComponents&#8221;:&nbsp;{ \/\/\u81ea\u5b9a\u4e49\u7684\u7ec4\u4ef6\u540d\u79f0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\uff1a&nbsp;\u7ec4\u4ef6\u8def\u5f84\uff0c\u6ce8\u610f\u662f\u76f8\u5bf9\u8def\u5f84\uff0c\u4e0d\u80fd\u662f\u7edd\u5bf9\u8def\u5f84&nbsp;&nbsp; &#8220;component-tag-name&#8221;:&nbsp;&#8220;path\/to\/the\/custom\/component&#8221; } } \u767b\u5f55\u540e\u590d\u5236 \u8fd9\u6837\uff0c\u5728\u4e3b\u9875\u9762\u5c31\u53ef\u4ee5\u4f7f\u7528\u4e86\u3002 \u76f8\u6bd4\u4e8evue\u7684\u7ec4\u4ef6\u5f15\u5165\uff0c\u5c0f\u7a0b\u5e8f\u7684\u65b9\u6848\u66f4\u7b80\u6d01\u3002vue\u7ec4\u4ef6\u5f15\u5165\u662f\u9700\u8981 import \u4e4b\u540e\uff0c\u540c\u65f6\u5728 components \u91cc\u9762\u6ce8\u518c\uff0c\u800c\u5c0f\u7a0b\u5e8f\u7684\u7ec4\u4ef6\u53ea\u9700\u8981\u5728 .json \u91cc\u9762\u6ce8\u518c\uff0c\u5c31\u53ef\u4ee5\u5728 wxml \u91cc\u9762\u4f7f\u7528\u3002 \u4f7f\u7528slot \u548cvue \u76f8\u540c\uff0c\u5c0f\u7a0b\u5e8f\u4e5f\u6709slot\u6982\u5ff5\u3002 \u5355\u4e00slot \u5728\u7ec4\u4ef6\u6a21\u677f\u4e2d\u53ef\u4ee5\u63d0\u4f9b\u4e00\u4e2a&nbsp; &nbsp;\u8282\u70b9\uff0c\u7528\u4e8e\u627f\u8f7d\u7ec4\u4ef6\u5f15\u7528\u65f6\u63d0\u4f9b\u7684\u5b50\u8282\u70b9\u3002 \/\/&nbsp;\u4e3b\u9875\u9762\u5185\uff0c&lt;addlike&gt;\u662f\u7ec4\u4ef6 &lt;addlike&gt;&lt;text&gt;\u6211\u662f\u88abslot\u63d2\u5165\u7684\u6587\u672c&lt;\/text&gt;&lt;\/addlike&gt; \/\/&nbsp;addlike&nbsp;\u7ec4\u4ef6 &lt;view&gt;&lt;view&gt;hello,&nbsp;\u8fd9\u91cc\u662f\u7ec4\u4ef6&lt;\/view&gt;&lt;view&gt;hello,&nbsp;{{my_properties}}&lt;\/view&gt;&lt;slot&gt;&lt;\/slot&gt;&lt;\/view&gt; \/\/&nbsp;\u6e32\u67d3\u540e &lt;view&gt;&lt;view&gt;hello,&nbsp;\u8fd9\u91cc\u662f\u7ec4\u4ef6&lt;\/view&gt;&lt;view&gt;hello,&nbsp;{{my_properties}}&lt;\/view&gt;&lt;text&gt;\u6211\u662f\u88abslot\u63d2\u5165\u7684\u6587\u672c&lt;\/text&gt;&lt;\/view&gt;&lt;\/addlike&gt; \u767b\u5f55\u540e\u590d\u5236 \u591a\u4e2aslot \u5982\u679c\u9700\u8981\u5728\u7ec4\u4ef6\u5185\u4f7f\u7528\u591a\u4e2aslot\uff0c \u9700\u8981\u5728\u7ec4\u4ef6js\u4e2d\u58f0\u660e\u542f\u7528\uff1a Component({ &nbsp;options:&nbsp;{ &nbsp;&nbsp;&nbsp;multipleSlots:&nbsp;true&nbsp;\/\/&nbsp;\u5728\u7ec4\u4ef6\u5b9a\u4e49\u65f6\u7684\u9009\u9879\u4e2d\u542f\u7528\u591aslot\u652f\u6301 }, &nbsp;properties:&nbsp;{&nbsp;\/*&nbsp;&#8230;&nbsp;*\/&nbsp;}, &nbsp;methods:&nbsp;{&nbsp;\/*&nbsp;&#8230;&nbsp;*\/&nbsp;} }) \u767b\u5f55\u540e\u590d\u5236 \u4f7f\u7528\uff1a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[],"class_list":["post-31167","post","type-post","status-publish","format-standard","hentry","category-19"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/31167","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=31167"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/31167\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=31167"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=31167"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=31167"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}