Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÈçºÎÉè¼Æ¸ßÀ©Õ¹µÄÔÚÏßÍøÒ³ÖÆ×÷ƽ̨
 
  3108  次浏览      27
  2019-1-18
 
±à¼­ÍƼö:
±¾ÎÄÀ´×Ôinfoq£¬ÎÄÕÂÖ÷Òª½éÉÜÈçºÎÉè¼ÆÒ»¸ö¸ßÀ©Õ¹µÄÔÚÏßÍøÒ³ÖÆ×÷ƽ̨£¬»á½»´úһЩ±³¾°ºÍ×îÖÕµÄЧ¹ûÒÔ¼°ºËÐÄÉè¼Æ·½°¸¡£

±³¾°

2018 Äê 3 Ô·ݿªÊ¼£¬Ëæ×ÅÔËÂúÂúµÄ¿ìËÙ·¢Õ¹£¬¿ªÊ¼ÔÚÆµ·±µÄµü´ú¸÷Öֻ£¬ÄÇʱ×î¿ìµÄ·½Ê½¾ÍÊÇ¿½±´ÀϵĻÏîÄ¿£¬È»ºó°´ÐèÇóÐ޸쬽Ó×ÅÉÏÏߣ¬È»¶øÕâÖÖ·½Ê½ºÜ¿ì¾ÍÓöµ½ÁËÆ¿¾±£¬ÆÈʹÔËÓªÍŶÓÒ²»áȥѰÕÒһЩµÚÈý·½Æ½Ì¨È¥Âú×ã×Ô¼ºµÄÔËÓªÒªÇ󣬲»¹ýÓÉÓÚ¶¨ÖÆ»¯ÈõºÍÓû§ÐÅϢû´òͨµ¼ÖÂû°ì·¨´óÁ¿Ê¹Ó㬻¹ÊÇÖ»Äܵȴýǰ¶Ë×ÊÔ´ÅÅÆÚ£¬Á½¸ö±È½ÏÍ»³öµÄÎÊÌâ¡£

²úƷÿ¸ö»î¶¯¶¼ÐèҪǰ¶ËÈËÔ±½éÈ룬ÉõÖÁÌæ»»Ò»¸ö¼òµ¥µÄͼ±êºÍ¼òµ¥µÄ²¼¾Ö£¬¶¼ÐèÒªÅÅÆÚµÈ´ý£¬³ÔµôÁË 50% µÄǰ¶Ë×ÊÔ´¡£

ÊÐÃæÉÏ¿ÉʹÓõÄһЩÔÚÏßÖÆ×÷ÍÆ¹ãÆ½Ì¨ÖÆ×÷µÄÒ³ÃæÓÖ²»ÄܺܺõؽáºÏµ½×Ô¼ºµÄÒµÎñÁ÷³ÌÀïÃæ¡£

תÅ̳齱£¬Èç¹ûʹÓõÚÈý·½Æ½Ì¨ÐèÒªÔڻ½áÊøºó°Ñ³é½±Ãûµ¥µ¼³ö£¬È»ºóµ¼Èë×Ô¼ºµÄƽ̨ÀïÃæÈ¥×öÆ¥Å䣬ȻºóÔÚɸѡÖн±Ãûµ¥£¬ºÜ²»·½±ã¡£

À­ÐÂËͺì°ü£¬Ê¹ÓõÚÈý·½µÄƽ̨Èç¹ûÓû§Ìá½»ÁËÀ­ÐµÄÊÖ»úºÅ¡£ÐèÒª¶¨ÆÚȥͬ²½Êý¾ÝÈ»ºóËͺì°ü£¬²»ÄܶԽÓ×Ô¼ºµÄƽ̨×öµ½ÊµÊ±¡£

Õë¶ÔÕâЩÎÊÌâÍŶӯÈÇÐÐèÒªÒ»¸öƽ̨À´ÌṩÔËÓª¿ìËÙ´´½¨»î¶¯£¬¿ª·¢Ò²ÄÜÔÚÕâÆ½Ì¨×öһЩ¹¦ÄÜÀ©Õ¹¡£×îºÃÄÜÂú×ãÒÑϼ¸¸öÒªÇó£º

·á¸»µÄ×é¼þÌṩÔËÓªÄÜ×ÔÖ÷´´½¨Ò³Ãæ¡£

ÿ¸ö×öºÃµÄÒ³Ãæ¶¼¿ÉÒÔÉèÖÃΪģ°åÒ³Ãæ£¬ÌṩÔËӪϴοìËÙͨ¹ýÄ£°å´´½¨Ò³Ãæ¼òµ¥ÐÞ¸ÄÈ»ºó·¢²¼¡£

Ìṩ³£Óö¯»­È»ÔËÓªÄÜ´´½¨ìÅ¿áЧ¹ûµÄ»î¶¯¡£

Ìṩÿ¸ö»î¶¯ÍêÕûµÄÊý¾Ý·ÖÎö·½±ãÔËÓª²é¿´Ð§¹û£¬³£¹æµÄ pv£¬uv£¬ÒÔ¼°×Ô¶¨ÒåÒ³ÃæµÄÔªËØµã»÷´òµãºÍͳ¼Æ¹¦ÄÜ¡£

ÌṩÁé»îµÄÒ³Ãæ¹ÜÀí£¬·½±ãÔËÓª°´×é°´ÏîĿά¶È¸øÆäËûͬÊ·ÖÅäȨÏÞͳһ¹ÜÀí¡£

¿ª·¢ÈËÔ±¿ÉÒÔΪ×é¼þÖ²Èë½Å±¾Áé»îÀ©Õ¹¸Ã»î¶¯µÄ¹¦ÄÜ£¬·½±ãÔËӪʹÓá£

ÌṩͳһµÄ×é¼þ¿ª·¢¹æ·¶£¬·½±ã¿ª·¢ÐµÄÒµÎñ×é¼þΪÔËÓªÌṩ¸üÓѺõÄʹÓ÷½Ê½¡£

Õë¶ÔÕâЩҪÇóÎÒÃÇ×öÁËÂëÁ¼Æ½Ì¨£¬ÂëÁ¼ÊÇÒ»¸öÔÚÏß H5 ±à¼­Æ÷£¬ÓÃÓÚ¿ìËÙÖÆ×÷ H5 Ò³Ãæ¡£Óû§ÎÞÐèÕÆÎÕ¸´Ôӵıà³Ì¼¼Êõ£¬Í¨¹ý¼òµ¥ÍÏ×§¡¢ÉÙÁ¿ÅäÖü´¿ÉÖÆ×÷¾«ÃÀµÄÒ³Ãæ£¬¿ÉÓÃÓÚÓªÏú³¡¾°ÏµÄÒ³ÃæÖÆ×÷¡£Í¬Ê±£¬Ò²Îª¿ª·¢ÕßÌṩÁËÍ걸µÄ±à³Ì½ÓÈëÄÜÁ¦£¬Í¨¹ý½Å±¾ºÍ×é¼þµÄÐÎʽ»ñµÃÇ¿´óµÄ×é¼þÐÐΪºÍ½»»¥¿ØÖÆÄÜÁ¦¡£

ºËÐÄÉè¼Æ

ÏÂÃæ»á·ÖÏíÏÂÎÒÃǵĺËÐÄÉè¼Æ£¬Õâ´ÎÖ÷ÒªÖØµã˵Ã÷ÏÂÃæ¼¸·½ÃæÄÚÈÝ

ÎÒÃÇ»á½éÉÜÕûÌåµÄ¼Ü¹¹À´Á˽âÒ»°ãµÄ±à¼­²úÉúÒ³ÃæµÄ»ù±¾Ë¼Â·£¬»ùÓÚÊý¾Ý±à³Ì¡£

ÎÒÃÇ»á½éÉܺËÐĵÄ×é¼þÈçºÎÉè¼Æ£¬È·±£¿ÉÒÔ×ÔÓÉÀ©Õ¹×é¼þÄÜÁ¦

ÎÒÃÇ»á½éÉÜÈçºÎÉè¼Æ±à¼­Æ÷´ïµ½¿É×Ô¶¨ÒåÊôÐԵĿØÖÆÃæ°å

±¸×¢£¨ÓÉÓÚÕûÌåÏîĿʵÏÖʹÓÃµÄ VUE£¬ËùÒÔºóÃæÓв¿·Ö½éÉܾßÌå¼¼ÊõʵÏÖµÄʱºò»áÒÔ VUE µÄʹÓýǶÈ˵Ã÷¡£ÓÃÆäËû¿ò¼ÜµÄ×ÔÐÐÄÔ²¹£©

ÕûÌå¼Ü¹¹

1. ÕûÌå¼Ü¹¹

ÕûÌå¼Ü¹¹Ïà¶Ô¼òµ¥£¬ºËÐľÍÊǶ¨ÒåÒ»Ì×±ê×¼µÄÊý¾Ý¹æ·¶£¬Ìṩһ¸ö±à¼­Æ÷È¥±à¼­Õâ¸öÊý¾Ý£¬Í¬Ê±Ìṩһ¸ö½âÎöÆ÷È¥½âÎö¸ÃÊý¾Ý£¬È»ºóäÖȾ³öÒ³Ãæ£¬Á÷³ÌÈçÏ¡£

2. Êý¾Ý½á¹¹

ͨ¹ýÉÏÃæµÄͼ¿´µ½Ã¿¸öÒ³ÃæÊÇÓɺܶà½Úµã×é³É£¨node£©, ÿ¸ö½Úµã¿ÉÒÔǶÌ××ӽڵ㡣¶øÃ¿¸ö½Úµã°üÀ¨µÄ»ù±¾ÐÅÏ¢ÈçÏ£¬±¸×¢ÎÄÕºóÐøÌáµ½µÄ nodeInfo ¶¼ÊǸýڵã¶ÔÓ¦µÄÈçÏÂÊý¾Ý

{
"id": "truck/button1l",
"type": "truck/button",
"label": " °´Å¥ 1l",
"version": "0.1.4",
"visible": true,
"style": {
"position": "absolute",
"width": "100px",
"height": "40px"
},
"animate": [],
"props": {
"text": " ÊäÈëÎÄ×Ö ",
"type": "danger",
"click": []
},
"path": "https://ymm-maliang.oss-cn-hangzhou.aliyuncs.com/truck/button/0.1.4/index.js",
"script": "",
"events": []
}

ÿ¸ö×é¼þ±È½ÏºËÐĵÄÔªËØÓÉÈçϼ¸²¿·Ö×é³É

id ÔªËØµÄΨһ±àºÅ¡£·½±ã´úÂë»ñÈ¡ºÍ²Ù×÷

type ×é¼þµÄÀàÐÍ¡£»á¸ù¾Ý²»Í¬µÄÀàÐͼÓÔØ²»Í¬µÄ½Å±¾×ÊÔ´£¬È»ºóÔËÐмÓÔØÍêµÄ½Å±¾»á´´½¨Ò»¸ö VUE Component£¬È»ºó»á°ÑÕâ¸ö Component ¹ÒÔØµ½ VUE È«¾Ö£¬ÓÉÓÚÿ¸ö×é¼þ½Úµã¶¼ÊÇÒ»¸ö ¶¯Ì¬µÄ Component ×é¼þ¡£ÕâʱºòÖ»ÐèÒªÐ޸Ķ¯Ì¬×é¼þµÄ :is Êý¾Ý½øÐÐÄÚÈÝÌæ»»¾ÍºÃÁË¡£

label ×é¼þ±ðÃû¡£·½±ãÔËÓªÀí½âʹÓÃ

version ×é¼þ°æ±¾¡£ ÿ¸ö×é¼þ¶¼ÊÇÓÐ×Ô¼ºµÄ°æ±¾µÄ¡£

style ×é¼þÑùʽ

props ×é¼þ²ÎÊý¡£Ã¿¸ö×é¼þ¶¼ÊÇÓÐһЩ³õʼ»¯²ÎÊýµÄ£¬ÕâЩ²ÎÊý¶¼ÊÇÓªÏúÈËÔ±Ôڱ༭Æ÷ÀïÃæÌîдµÄ¡£ÕâЩ²ÎÊý¾Í´æ·ÅÔÚÕâÀïÃæ£¬ÔÚÀ©Õ¹±à¼­Æ÷ÊôÐÔÄÜÁ¦ÀïÃæ»áÏêϸ˵Ã÷

script À©Õ¹½Å±¾¡£Ã¿¸ö×é¼þ¿ÉÒÔ²åÈëһЩ½Å±¾´úÂëÀ©Õ¹×é¼þµÄ¹¦ÄÜ¡£ÕâЩ½Å±¾´´½¨µÄ¶ÔÏó»á mixin µ½¸Ã×é¼þ¶ÔÏóÀïÃæ£¬ÔÚ×é¼þÉè¼ÆÀïÃæ»áÏêϸ½éÉÜ

event ×é¼þ°ó¶¨Ê¼þ¡£ ÿ¸ö×é¼þ¿ÉÒ԰󶨳£¼û dom ʼþ¡£

child º¢×ӽڵ㡣

path ½Å±¾Â·¾¶¡£ ͨ¹ý¸Ã·¾¶¼ÓÔØ½Å±¾´´½¨×é¼þ¶ÔÏó¡£

ÉÏͼµÄÒ³Ãæ°üÀ¨Ò»¸öͼƬ£¬Í¼Æ¬ÏÂÃæÁ½¸öÎÄ×Ö£¬Í¼Æ¬ÐֵܽڵãÓиö°´Å¥ÔªËØ¡£¶ÔÓ¦Ò³ÃæµÄÏêϸÊý¾Ý½á¹¹ÈçÏ£¬¿ÉÒÔ¸ÐÊÜÏÂÍêÕû½á¹¹¡£

{
"id": "node",
"type": "node",
"visible": true,
"style": {
},
"props": {},
"child": [
{
"id": "truck/image15j",
"type": "truck/image",
"label": " ͼƬ 15j",
"version": "0.1.4",
"visible": true,
"style": {
"position": "absolute",
"width": "320px"
},
"animate": [],
"props": {
"url": "https://ymm-maliang.oss-cn-hangzhou.aliyuncs.com/ymm-maliang/access/ymm_1533366999689.png",
"click": []
},
"path": "https://ymm-maliang.oss-cn-hangzhou.aliyuncs.com/truck/image/0.1.4/index.js",
"script": "",
"events": [],
"child": [
{
"id": "truck/text3l",
"type": "truck/text",
"label": " Îı¾ 3l",
"version": "0.1.4",
"visible": true,
"style": {
"position": "absolute"
},
"animate": [],
"props": {
"text": " ÎÄ×ÖÄÚÈÝ 1",
"click": []
},
"path": "https://ymm-maliang.oss-cn-hangzhou.aliyuncs.com/truck/text/0.1.4/index.js",
"script": "",
"events": []
},
{
"id": "truck/text3l5g",
"type": "truck/text",
"label": " Îı¾ 3l",
"version": "0.1.4",
"visible": true,
"style": {
"position": "absolute",
"width": "114px"
},
"animate": [],
"props": {
"text": " ÎÄ×ÖÄÚÈÝ 2",
"click": []
},
"path": "https://ymm-maliang.oss-cn-hangzhou.aliyuncs.com/truck/text/0.1.4/index.js",
"script": "",
"events": []
}
]
},
{
"id": "truck/button1l",
"type": "truck/button",
"label": " °´Å¥ 1l",
"version": "0.1.4",
"visible": true,
"style": {
},
"animate": [],
"props": {
"text": " ÊäÈëÎÄ×Ö ",
"type": "danger",
"click": []
},
"path": "https://ymm-maliang.oss-cn-hangzhou.aliyuncs.com/truck/button/0.1.4/index.js",
"script": "",
"events": []
}
],
"script": [],
"animate": [],
"version": "0.1.0",
"events": []
}

Ò»¾ä»°Ð¡½á£ºÒ³ÃæÊÇÓɺܶà½ÚµãµÝ¹éÉú³É£¬Ã¿¸ö½Úµã°üº¬²¼¾Ö£¬Ê¼þ£¬½Å±¾£¬²ÎÊý£¬°æ±¾µÈÐÅÏ¢£¬È»ºó±à¼­Æ÷±à¼­ÕâЩÐÅÏ¢£¬½âÎöÆ÷½âÎöÕâЩÐÅÏ¢¡£

×é¼þÉè¼Æ

Ò»¸öÒ³Ãæ¶¼ÊÇÓÉÒ»¸ö¸öµÝ¹éǶÌ×µÄ×é¼þ×é³É£¬×é¼þÊÇÕû¸öÏîÄ¿µÄ×îºËÐĵÄÒ»²¿·Ö£¬ÎªÁËÈÃ×é¼þ¾ßÓÐÀ©Õ¹ÄÜÁ¦£¬ÎÒÃǶÔ×é¼þµÄ¹¦ÄÜʹÓÃÁË mixin ·½Ê½£¬Í¨¹ý»ù´¡×é¼þÂß¼­ + ×Ô¶¨Òå½Å±¾µÄÐÎʽÀ´Éú³É×é¼þ¡£ÏÂÃæ½éÉÜÏÂÕûÌå×é¼þ½á¹¹ºÍ³õʼ»¯Á÷³Ì£¬·½±ãÀí½âÎÒÃÇÊÇÈçºÎʵÏֵġ£

ÉÏͼ×󲿷ֿÉÒÔ¿´µ½Õû¸öÒ³Ãæ¶¼ÊÇÓÉÒ»¸öÒ»¸ö node ½Úµã×é³É£¬ËûÃÇÊÇÒ»¸öÊ÷×´½á¹¹£¬Ã¿¸ö node ½ÚµãÏÂÃæ°üº¬×ÅÒ»¸ö×é¼þ¶ÔÏó×ö¹¦ÄÜչʾ£¬ÏÂÃæÊÇ node ½ÚµãµÄ dom ½á¹¹£¬¿ÉÒÔ¿´µ½Ã¿¸ö½Úµã¶¼Êǵݹé½Úµã£¬Ã¿¸ö½ÚµãÄÚ²¿¶¼°üº¬Ò»¸ö¶¯Ì¬×é¼þ£¬Ã¿¸ö¶¯Ì¬×é¼þµÄͨ¹ý nodeinfo.id Ϊ key µÄ×é¼þ½øÐÐäÖȾ¡£

<div class="node" v-show="visible" :style="nodeInfo.style">
<component :is="nodeInfo.id" v-bind="nodeInfo.props" :ref="nodeInfo.id" :style="componentStyle"></component>
<node v-if="nodeInfo.child" :info="item" v-for="item in nodeInfo.child " :key="item.id"></node>
</div>

ÉÏͼÓÒ²¿·Ö¿ÉÒÔ¿´µ½äÖȾÁ÷³Ì¡£ÎªÁË´ïµ½×é¼þµÄ¸ßÀ©Õ¹ÐÔ£¬Ã¿¸ö×é¼þµÄ¹¦Äܰüº¬Á½¸öÖ÷Òª²¿·Ö

×é¼þ´úÂë , ÿ¸ö×é¼þ¶¼ÊÇÓÐÌØ¶¨²ÎÊýºÍÌØ¶¨¹¦ÄܵĽű¾ÊµÏÖ£¬±ÈÈç ͼƬ£¬¸»Îı¾£¬·ÖÏí£¬¾Å¹¬¸ñµÈ×é¼þ£¬×é¼þ´úÂëͨ¹ý¶ÔÓÚµÄ type ºÍ path ²ÎÊýÈ¥¼ÓÔØ¶ÔÓڵĽű¾»ñÈ¡¶ÔÏó¡£

×é¼þͨ¹ý±à¼­Æ÷Ìí¼ÓµÄ½Å±¾ , ±à¼­Æ÷¿ÉÒÔΪÿ¸ö×é¼þ¶¯Ì¬Ìí¼Ó½Å±¾À´ÔöÇ¿¶Ô×é¼þµÄ²Ù×÷ÄÜÁ¦¡£ÈçϲÙ×÷, ¿ÉÒÔ¿´µ½Ò»¸ö×é¼þ¿ÉÒÔÌí¼Ó¶à¸ö½Å±¾¡£Ã¿¸ö½Å±¾Æäʵ¾ÍÊÇÒ»¸öµÄ vue ×é¼þ£¬ÖÕÕâÀïÃæµÄ´úÂë»á´´½¨¶ÔÏó mixin µ½×îÖÕµÄ vue ×é¼þÀïÃæ£¬ËùÒÔÄã¿ÉÒÔΪ×é¼þÀ©Õ¹¸÷ÖÖ¹¦ÄܽøÐÐÖ§³ÖÄãµÄÌØÊâÒµÎñ¡£

Ò»¸ö½ÚµãµÄÂß¼­¹¦ÄÜ = ×é¼þÂß¼­ + ½Å±¾ 1+ ½Å±¾ 2+ ½Å±¾ 3¡­

ÿ¸ö×é¼þÔÚ¸ù¾Ý×Ô¼ºµÄÀàÐͼÓÔØ¶ÔÓ¦ js ½Å±¾ºó£¬»á¶Ô¸Ã×é¼þ nodeInfo.script ÀïÃæµÄ Âß¼­½øÐÐ mixin. È»ºó´´½¨Ò»¸ö×îÖÕµÄ×é¼þ×¢²áµ½ Vue.component ÀïÃæ·½±ãºóÐøÊ¹ÓÃ, ºËÐÄ´úÂëÈçÏÂ

// ͨ¹ý¼ÓÔØµ½µÄ×é¼þ½Å±¾»ñµÃµÄÈ«¾Ö¶ÔÏó´´½¨ vue ¶ÔÏó window['image_1.0.3'] load ×é¼þ½Å±¾ÔËÐкó»áÉú³ÉµÄ¶ÔÏó
var component = Vue.extend( window['image_1.0.3'])
// ±éÀúËùÓмÓÈëµÄ½Å±¾»ìºÏ×é¼þ¶ÔÏóÖÐ
nodeInfo.script.forEach((value)=>{
component =component.extent(value)
})
// ÒÔ½Úµã id Ϊ key£¬×¢²á×îÖÕ×é¼þ¶ÔÏó
Vue.component(nodeInfo.id,component)
// Ð޸ĸýڵãµÄ¶¯Ì¬×é¼þ :is ²ÎÊýΪ ¸Ã½Úµã id
// done

Ò»¾ä»°Ð¡½á£ºÍ¨¹ý²»¶ÏµÄ mixin еÄ×Ô¶¨Òå½Å±¾½øÀ´À©Õ¹×é¼þÄÜÁ¦

×é¼þÊôÐԱ༭Éè¼Æ

ÊôÐԱ༭Ö÷ҪĿµÄÊÇ¿ª·¢×é¼þµÄÈ˻ᱩ¶һЩ¿ÉÅäÖõIJÎÊý¸øÔËÓªÈËÔ±Ôڱ༭Æ÷ÀïÃæÌîдºÍÐ޸ġ£

±ÈÈçÑ¡ÔñÒ»¸ö×é¼þºóÔÙÓÒ²àÊôÐÔÃæ°å¿ÉÒÔ¶ÔÕâ¸ö×é¼þ½øÐÐһЩÊôÐÔÉèÖá£

ΪÁ˱ãÓÚά»¤ºÍÀ©Õ¹£¬ÎÒÃǾõµÃÒ»¸ö×é¼þµÄ¿ÉÅäÖÃÊý¾Ý°üÀ¨¼òµ¥Êý¾Ý£¬¸´ÔÓÂß¼­Êý¾Ý£¬¶ÔÓ¦¿É±à¼­ÊôÐԵIJ¿·ÖÒ²·ÖΪÁ½²¿·Ö

±à¼­Æ÷Ìṩ»ù´¡ÊôÐԱ༭

±à¼­Æ÷ÄÜÌṩÀ©Õ¹±à¼­±à¼­ÄÜÁ¦£¬Ö÷ÒªÕë¶ÔÔËÓª·½±ã²Ù×÷£¬ÌØÕ÷ÐԵĿª·¢×é¼þÊôÐԵı༭¹¦ÄÜ£¬Ìṩ¶ÔÔËÓªÓѺõIJÙ×÷ÌåÑé

ÏÂÃæÕë¶ÔÕâÁ½¿é±È½ÏºËÐĵÄÄÚÈÝ˵Ã÷ÏÂÎÒÃÇÈçºÎ×öµÄ¡£

±à¼­Æ÷»ù´¡ÊôÐԱ༭ÄÜÁ¦

¶ÔÓÚÒ»¸ö×é¼þµÄ¿ª·¢ÕßÀ´Ëµ£¬Ò»ÊǶ¨Òå¸Ã×é¼þÄÇЩ²ÎÊýÐèÒª±©Â¶µ½±à¼­Æ÷ÈÃÔËÓª²Ù×÷£¬¶þÊǶ¨Òå¸ÃÊôÐÔ¶ÔÓ¦µÄֵͨ¹ýʲô¿Ø¼þ²Ù×÷¡£

ÉÏÎÄÔÚÕûÌå¼Ü¹¹Êý¾Ý½á¹¹ÖÐÌáµ½ÁËÿ¸ö node ½Úµã¶¼ÓÐÒ»¸ö props ÊôÐÔ£¬¸ÃÊôÐÔ¾ÍÊÇ´æ·ÅןÃ×é¼þ¿ÉÅäÖõIJÎÊýËùÅäÖõÄ×îÖÕÖµ£¬ÔÚ³õʼ»¯×é¼þµÄʱºò»á°ÑÕâ¸ö props µÄÊý¾Ý´«Èë×é¼þ½øÐгõʼ»¯¡£¶ø¶¨ÒåÒ»¸ö×é¼þÄܽÓÊÜÄÇЩ²ÎÊýÔòÊÇÔÚÿ¸ö Vue ×é¼þµÄ props ÊôÐÔÉ϶¨Ò壬 ¶ø±à¼­Æ÷µÄ×÷ÓþÍÊÇͨ¹ý±à¼­Æ÷È¥»ñÈ¡µ½Ã¿¸ö¶ÔÏó¶¨ÒåµÄ props£¬È»ºó¸ù¾Ýÿ¸ö²ÎÊýµÄÀàÐÍÌṩ²»Í¬µÄ±à¼­¿Ø¼þ£¬±ÈÈç boolean ÎÒÃÇ»áÌṩ Çл»°´Å¥£¬image ÎÒÃÇ»áÌṩѡÔñͼƬ¿Ø¼þµÈµÈ¡£À©Õ¹½Å±¾Í¬Ñù¿ÉÒÔÀ©Õ¹×é¼þµÄ¿É±à¼­ÊôÐÔ£¬ÏÂÃæÊÇÒ»¸öÀ©Õ¹½Å±¾µÄÀý×Ó¡£Ö÷Ҫ˵Ã÷Ö§³ÖµÄÄÇЩÀàÐÍ£¬¿É¶¨ÒåµÄ¸ñʽ¡£ÕûÌåÁ÷³ÌÈçÏ¡£

ÏÂÃæÎÒÃÇÏÈ¿´Ò»ÏÂÿ¸ö×é¼þ¿É¶¨ÒåµÄ props Àý×Ó¡£

/**
*
* @param type: ×Ö¶ÎÀàÐÍ£¬Ö§³ÖÔ­ÉúÀàÐÍÒÔ¼°¡¾ÂëÁ¼ÊäÈëÀàÐÍ¡¿
*
* ÂëÁ¼ÊäÈëÀàÐÍ:
* input µ¥ÐÐÊäÈë¿ò
* text ¶àÐÐÊäÈë¿ò
* enum ÁÐ±íµ¥Ñ¡ ÐèÌṩѡÏî×Ö¶Î defaultList£¬ Ö§³ÖÊý×é¡¢map ½á¹¹
* image ͼƬѡÔñ
* audio ÒôƵѡÔñ
* video ÊÓÆµÑ¡Ôñ
* richtext ¸»Îı¾
* number Êý×Ö
* function ·½·¨ÉèÖÃ
* data json Êý¾Ý
* date ʱ¼äÑ¡Ôñ
* checkbox ¶àÑ¡¿ò ͬ enum ²»Ìṩ defaultList ×Ö¶Îʱ£¬ÊäÈëֵΪ²¼¶ûÀàÐÍ
* radio µ¥Ñ¡¿ò ͬ enum
*
*/

return {
props: {
// Ô­ÉúÀàÐÍ
foo: {
type: String
},
// ͼƬÊäÈë
fooImage: {
type: String,
editer: {
type: 'image'
}
},
// ÈÕÆÚ
fooDate: {
editer: {
type: 'date'
}
},
// checkbox ¶àÑ¡
fooCheckbox: {
type: Array, // ´ËÏî±ØÐëΪ Array
default: () => { // ÇÒÐèÌṩ³õʼֵ
return [] // ['day', 'hour', 'min', 'sec']
},
editer: {
label: 'ÏÔʾ¾«¶È',
type: 'checkbox',
defaultList: [ // array ÐÎʽµÄÑ¡Ïî
'day',
'hour',
'min',
'sec',
]
}
},
// checkbox ²¼¶û
fooCheckboxBool: {
type: Boolean, // ´ËÏî±ØÐëΪ Boolean
editer: {
type: 'checkbox'
}
},
// enum º¬Ñ¡Ïî
fooEnum: {
default: 'value1',
type: String,
editer: {
label: 'ÎÒÊÇ×Ö¶ÎÃû', // ½«×Ö¶ÎÃûÏÔʾΪ¿É¶ÁÐÔ¸üÇ¿µÄÎı¾£¬²»Ìṩ´ËÏîʱ£¬ÏÔʾ×Ö¶ÎÃû
desc: 'ÎÒÊǰïÖúÎı¾', // Ϊ×Ö¶ÎÌṩÌáʾÐÅÏ¢£¬°ïÖúÀí½â×ֶεÄÒâÒå
type: 'enum',
defaultList: { // map ½á¹¹µÄÑ¡Ïî key Ϊֵ£¬value ΪÏÔʾÎı¾
'value1': 'Ìõ¼þ 1',
'value2': 'Ìõ¼þ 2',
'value3': 'Ìõ¼þ 3',
}
}
},
// Ìõ¼þÊôÐÔ
ifFoo1: {
type: [Number],
default: 0,
editer: {
work: function () {
return this.fooEnum == 'value1' // Ö»Óе± `fooEnum` ×Ö¶ÎȡֵΪ 'value1' ʱ²ÅÏÔʾ´ËÏî
},
label: 'Ìõ¼þÊôÐÔ 1',
type: 'number',
}
},
ifFoo2: {
type: [Date, String],
default: null,
editer: {
work: function () {
return this.fooEnum == 'value2' // Ö»Óе± `fooEnum` ×Ö¶ÎȡֵΪ 'value2' ʱ²ÅÏÔʾ´ËÏî
},
label: 'Ìõ¼þÊôÐÔ 2',
type: 'date',
}
},
},
mounted: function () {
console.log('hello ' + this.foo)
console.log('hello ' + this.fooImage)
// ...
}
}

 

ÉÏÃæ½Å±¾À©Õ¹µÄ×é¼þ¶ÔÓ¦µÄÔö¼ÓµÄ¿ÉÅäÖõÄÊôÐÔÈçÏÂͼ¡£

ÕâÀïÃæµÄµÄÖ÷ÒªÉè¼ÆÔÚÓÚÿ¸ö props ÊôÐÔÀïÃæÌí¼ÓÁËÒ»¸ö editer ×ֶνøÐиÃ×Ö¶ÎÔڱ༭Æ÷»·¾³ÏÂÌṩʲô×é¼þ¶Ô¸ÃÊôÐÔ½øÐб༭¡£editer µÄ×Ö¶ÎÖ÷Òª°üÀ¨ÈçÏ¡£

{

label: 'ÎÒÊÇ×Ö¶ÎÃû', // ½«×Ö¶ÎÃûÏÔʾΪ¿É¶ÁÐÔ¸üÇ¿µÄÎı¾£¬²»Ìṩ´ËÏîʱ£¬ÏÔʾ×Ö¶ÎÃû
desc: 'ÎÒÊǰïÖúÎı¾', // Ϊ×Ö¶ÎÌṩÌáʾÐÅÏ¢£¬°ïÖúÀí½â×ֶεÄÒâÒå
type: 'enum',
ignore: true, // ²»Ôڱ༭Æ÷ÏÔʾ
work:function(){
// Èç¹ûÂú×ãʲôÌõ¼þ²Å»áÏÔʾ
},
defaultList: { // map ½á¹¹µÄÑ¡Ïî key Ϊֵ£¬value ΪÏÔʾÎı¾
'value1': 'Ìõ¼þ 1',
'value2': 'Ìõ¼þ 2',
'value3': 'Ìõ¼þ 3',
}
}

label Ôڱ༭Æ÷ÏÔʾµÄÃû³Æ

desc ¸Ã×Ö¶ÎÔڱ༭Æ÷ÏêϸÃèÊö

type ±à¼­¸ÃÊôÐÔµÄ×é¼þÀàÐÍ

ignore ¸ºÂÔÔڱ༭Æ÷ÏÔʾ£¬Ò»°ãÔÚ¸ÃÊôÐÔÌṩÁ˸߼¶±à¼­Ä£Ê½ÐèÒªÒþ²ØµôĬÈϵÄģʽ¡£

work Ò»¸ö·½·¨£¬¸Ã·½·¨·µ»Ø true »áÔڱ༭Æ÷ÏÔʾ¸ÃÊôÐÔ£¬Ò»±éÓÃÓÚÁª¶¯Òþ²ØºÍÏÔʾһЩ±à¼­ÊôÐÔ

defaultList һЩĬÈÏÊý¾Ý£¬Ò»°ãÌṩµ¥Ñ¡£¬ÏÂÀ­µÈĬÈÏ¿ÉÑ¡ÔñµÄÖµ¡£

Ò»¾ä»°Ð¡½á£º±à¼­Æ÷ͨ¹ý»ñȡÿ¸ö×é¼þµÄ props£¬±éÀúÿһ¸öÊôÐÔ£¬°´ÀàÐÍÌṩ²»Í¬µÄ²Ù×÷¿Ø¼þ£¬±à¼­Éú³É×îÖÕµÄÊý¾Ý·Åµ½ nodeInfo.props ÉÏ¡£

À©Õ¹±à¼­ÊôÐÔÄÜÁ¦

ºÜ¶àʱºòÒ»¸ö×é¼þ¿ÉÅäÖõÄÊôÐÔ°´ÎÒÃǵĹ滮À´Ëµ¾ÍÏÂÃæ¼¸ÖÖÀàÐÍ¡£

/**
*
* @param type: ×Ö¶ÎÀàÐÍ£¬Ö§³ÖÔ­ÉúÀàÐÍÒÔ¼°¡¾ÂëÁ¼ÊäÈëÀàÐÍ¡¿
*
* ÂëÁ¼ÊäÈëÀàÐÍ:
* input µ¥ÐÐÊäÈë¿ò
* text ¶àÐÐÊäÈë¿ò
* enum ÁÐ±íµ¥Ñ¡ ÐèÌṩѡÏî×Ö¶Î defaultList£¬ Ö§³ÖÊý×é¡¢map ½á¹¹
* image ͼƬѡÔñ
* audio ÒôƵѡÔñ
* video ÊÓÆµÑ¡Ôñ
* richtext ¸»Îı¾
* number Êý×Ö
* function ·½·¨ÉèÖÃ
* data json Êý¾Ý
* date ʱ¼äÑ¡Ôñ
* checkbox ¶àÑ¡¿ò ͬ enum ²»Ìṩ defaultList ×Ö¶Îʱ£¬ÊäÈëֵΪ²¼¶ûÀàÐÍ
* radio µ¥Ñ¡¿ò ͬ enum
*
*/

Èç¹û°´Ã¿¸öÀàÐÍÌṩһ¸ö»ù±¾µÄ±à¼­×é¼þ¾ÍÄÜÍê³É 90% µÄÐèÇ󣬲»¹ýÔÚËæ×Å×é¼þµÄ¸´ÔÓ¶ÈÔö¼Ó£¬Ã¿¸ö×é¼þ¿ÉÅäÖõÄÊôÐÔ±äµÃÇ§Ææ°Ù¹Ö£¬¸÷ÖÖÐèÇ󶼿ÉÄÜ¡£±ÈÈçÒ»¸ö¼òµ¥µÄ¶àÑ¡£¬Ô­À´µÄ¿ÉÑ¡ÏîÖ»ÄÜдËÀ£¬ÏÖÔÚÐèÒª×Ô¼ºÇëÇó½Ó¿Ú»ñÈ¡¡£µ«ÕâЩÂß¼­ÎÒÃDz»ÄÜ×öµ½Í³Ò»µÄ±à¼­Æ÷ÀïÃæ£¬Ò²²»ÄÜ×öµ½×é¼þÀïÃæ£¬ËùÒÔÖ»ÄÜÔÚ×ö×é¼þµÄʱºòÌṩһÖÖ»úÖÆÈÿª·¢×é¼þµÄͬѧ¿ª·¢×é¼þµÄͬʱ£¬»¹ÄܶÔÕâ¸ö×é¼þ¿ª·¢Ò»¸ö×Ô¶¨ÒåµÄ±à¼­Æ÷£¬²¢ÄÜÕûºÏµ½ÎÒÃǵÄÊôÐÔ±à¼­Ãæ°åÖС£

ÕûÌå¼Ü¹¹ÈçÏ£¬×îÖÕЧ¹û¿ÉÒԲο¼ÉÏͼµÄ×Ô¶¨ÒåÃæ°å²¿·Ö

Ò»¸ö×é¼þ´ò°üÍêÒ»°ã»áÓÐÁ½¸ö±ØÒªµÄ½Å±¾£¬Ò»¸öÊÇ×é¼þ¶ÔÓ¦µÄ js¡£Ò»¸öÊǸÃ×é¼þ¶ÔÓ¦±à¼­Æ÷µÄ½Å±¾ js¡£

Õû¸öƽ̨¶Ô±à¼­Æ÷µÄ¹¦ÄÜÀ©Õ¹¶¼ÊÇÏàͨµÄ£¬Í¨¹ý¼ÓÔØ½Å±¾£¬´´½¨¶ÔÏó£¬×¢²áµ½ Vue£¬È»ºóͨ¹ý¶¯Ì¬×é¼þäÖȾ¡£¶Ô±à¼­Æ÷ÊôÐÔµÄÀ©Õ¹Ò²ÊÇÒ»Ñù¡£¼ÓÔØ¶ÔÓ¦×é¼þµÄ±à¼­Æ÷½Å±¾£¬È»ºó°´ÏàͬµÄ·½·¨½øÐÐÖ²Èë¡£ÕâÀï¾Í²»ÔÚϸ½²¡£ÕâÀï¼òµ¥·ÖÏíÏÂÎÒÃǶÔÒ»¸ö×é¼þµÄ¿ª·¢×îÖյĽá¹û¡£ÈçÏÂͼ

×é¼þ¿ª·¢¹ý³ÌÖеĽçÃæ

×é¼þ·¢²¼ºóÔÚÂëÁ¼±à¼­Æ÷ÀïÃæµÄÑù×Ó

×é¼þ¶¯»­Õ¹Ê¾

ÔËÓª»î¶¯¶ÔһЩ¼òµ¥µÄ¶¯»­Ìṩ֧³Ö£¬·½±ã×öһЩÈ볡ºÍ³ö³¡µÄ¶¯»­£¬ÌáÉý»î¶¯µÄ½»»¥¸Ð£¬ÎÒÃÇʹÓÃÁË animate.css ÌṩµÄÒ»Ì× css ¶¯»­¡£ÏÂÃæÌṩ¼òµ¥µÄչʾ

ºÏ³É×é¼þ˼¿¼

ºÏ³É×é¼þ¾ÍÊÇÑ¡ÔñÒÑÓеĽڵ㱣´æÎªÒ»¸öͨÓõÄ×é¼þ£¬·½±ãÏ´ÎÖ±½ÓʹÓÃ

ʹÓÃ×éºÏ×é¼þ

µ¼³ö×éºÏ×é¼þ¡£

Ä£°åÒ³Ãæ

Ò³ÃæÄ£°åµÄÄ¿µÄºÍ×éºÏ×é¼þÀàËÆ£¬¶¼ÊÇÌṩÒѾ­×öºÃµÄÄÚÈÝ£¬ÔËÓª¿ìËÙÑ¡ÔñʹÓôﵽ¿ìËÙÉÏÏ߻µÄÄ¿µÄ, ÏÂÃæÊǼòµ¥ÑÝʾ

×ܽá

ΪÁËÌṩһÌ×¶ÔÔËÓªÓѺ㬲¢ÇÒ¸ßÀ©Õ¹µÄ h5 »î¶¯ÖÆ×÷ƽ̨ÎÒÃÇ×öÁËÕâ¸öÂëÁ¼Æ½Ì¨¡£ÏÖÔÚÂëÁ¼µÄƽ̨ÏÖÔÚÖ§³Å×ÅÔËÂúÂúÿÌìÐÂÔö 5-10 ¸öµÄÐÂ»î¶¯Ò³ÃæµÄÐèÇó£¬ÒÑÓлģ°åµÄ»î¶¯ 95% ¿ÉÒÔÓªÏúÈËԱͨ¹ýÄ£°å´´½¨£¬×öЩÑùʽ»òͼƬµÄÐ޸ģ¬È»ºó·¢²¼µ½ÏßÉÏ£¬Õû¸ö¹ý³Ì¾Í¼¸·ÖÖÓ¡£»î¶¯µÄÄ£°åºÍ×é¼þÄ£°åÒ²ÔÚ²»¶Ï³Áµí£¬ÏàÐųÁµíÒ»¶Îʱ¼äºóËæ×ÅÄ£°åÔ½À´Ô½È«£¬¶ÔÓªÏú»î¶¯µÄ¿ìËÙÖÆ×÷ºÍ¿ÉÑ¡ÔñÐÔ¶¼»á¸üÇ¿¡£

Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì

 
   
3108 ´Îä¯ÀÀ       27