/g,"").replace(/\//g,""),typeof clickList=="object"){let time=calculateVisitTime();event.isTrusted?clickList.push({lastClickDom,time,type:"User manual click"}):clickList.push({lastClickDom,time,type:"Program click"}),clickList=clickList?JSON.stringify(clickList).substring(0,2e3):[]}},!0),window.addEventListener("error",function(e){if(isBlocked)return!1;stringToLower(e.target.tagName)==="img"&&e.target.src&&holderFile(e.target.src)?loadFailed.filter(item=>item.src===e.target.src).length===0&&loadFailed.push({type:"img_load_error",src:e.target.src}):stringToLower(e.target.tagName)==="script"&&e.target.src&&holderFile(e.target.src)?loadFailed.filter(item=>item.src===e.target.src).length===0&&loadFailed.push({type:"js_load_error",src:e.target.src}):stringToLower(e.target.tagName)==="link"&&e.target.href&&holderFile(e.target.href)&&loadFailed.filter(item=>item.src===e.target.href).length===0&&loadFailed.push({type:"css_load_error",src:e.target.href})},!0),window.onerror=function(errorMessage,scriptURI,lineNumber,columnNumber,errorObj){if(!scriptURI&&!errorObj||scriptURI&&scriptURI.indexOf("chrome-extension")!==-1||isBlocked)return;if(errorObj){const securityError=/SecurityError/i.test(errorObj),getItemError=/getItem/i.test(errorObj),setItemError=/setItem/i.test(errorObj),serviceWorkerError=/evaluating 'navigator.serviceWorker.register'/i.test(errorObj);if(securityError||setItemError||getItemError||serviceWorkerError)return}const hasSignificanceError=errorSignificanceMessageInfo.some(sign=>errorMessage.includes("Unexpected token "+sign)||errorMessage.includes("unexpected token"+sign)||errorMessage.includes("Unterminated string")||errorMessage.includes("Expected property name")||errorMessage.includes("Cannot convert undefined or null to object"));let networkSendStatus=!1;["4g","5g","wifi"].some(item=>navigatorConnection?.effectiveType.includes(item))&&!navigatorConnection?.saveData&&(networkSendStatus=!0),hasSignificanceError&&isChromeNeedCall&&networkSendStatus&&(console.log("%c"+`dom=${lastClickDom} message=${errorMessage}`,"background: rgba(130,189,174,0.8); color: #fff; font-size: 18px; padding: 2px 10px;"),errorSignificanceMessageArr.push({errorMessage,errorType:"significance",pageType:"",scriptURI:scriptURI?scriptURI.replace(/[?#].*$/,""):"",domMessage:lastClickDom,errorObj:errorObj.toString(),lineNumber,columnNumber,...otherInfo()}),lastClickDom=""),isChromeNeedCall&&(console.log("%c"+`dom=${lastClickDom} message=${errorMessage}`,"background: rgba(130,189,174,0.8); color: #fff; font-size: 14px; padding: 2px 10px;"),errorMessageArr.push({errorMessage,scriptURI:scriptURI?scriptURI.replace(/[?#].*$/,""):"",lineNumber,columnNumber,errorObj:errorObj.toString(),...otherInfo()}),errorMessageArr=errorMessageArr.filter(obj=>typeof obj.errorObj=="string"&&!obj.errorObj.includes("ReferenceError: Vue is not defined")&&!obj.errorObj.includes("SyntaxError: Unexpected end of JSON input")))},window.addEventListener("load",function(){let mergeErrorMessage=errorMessageArr.concat(errorSignificanceMessageArr);fileLoadFailedFun(),jsExceptionFun(mergeErrorMessage),setPageLoadTimestamp(),checkPageUrl()});function setPageLoadTimestamp(){document.body.setAttribute("data-load-time",(new Date).toLocaleString())}function abuttingJointFramework(c){if(c&&c.textStatus&&c.textStatus==="error"){let r={};r.handler=c.context.handler,r.errorObj=JSON.stringify(c.context.options),r.errorMessage=c.dataOrXhr.responseText,r.errorType="request error",r.pageType="",c.errorMessage&&monitorFrontError(r)}}function calculateVisitTime(){let endTime=new Date;return(endTime-startTime)/1e3+"s"}function checkPageUrl(){location.pathname.includes(location.protocol)&&typeof monitorFrontError=="function"&&monitorFrontError({errorMessage:"The current page pathname contains the protocol",pageUrl:window.location.href,warning_message_code:"dingtalk_front_pageurl_error"})}function fileLoadFailedFun(){loadFailed.length>0&&monitorFrontFilesFailed({filesInfo:loadFailed,...otherInfo()}).then(result=>{result&&fileLoadFailedRequestFun(result)}).catch(error=>{console.error(error)})}function fileLoadFailedRequestFun(loadFailedRes){let jqueryFailed=!1,loadFailedFileArray=[];if(loadFailedRes=loadFailedRes?JSON.parse(loadFailedRes):[],loadFailedRes.length>0){for(const k of loadFailedRes)k.src.includes("jquery-")&&k.type==="js_load_error"&&(jqueryFailed=!0),loadFailedFileArray.push(k.src);loadFailedFileArray=loadFailedFileArray.filter((item,index,self)=>self.indexOf(item)===index);let errorMessage=jqueryFailed?"The current page jQuery file does not exist":"Some resource files do not exist";monitorFrontError({errorMessage,pageUrl:window.location.href,pageType:jqueryFailed?"":"",files:loadFailedFileArray,...otherInfo()})}}function jsExceptionFun(errorMessageArr){for(const k of errorMessageArr)k.scriptURI.indexOf(location.origin)>=0&&getErrorSendTo("",k.lineNumber,k,!0)}function handleResourceError(errorMessage,resourceSrc){monitorFrontError({errorMessage,pageUrl:window.location.href,src:resourceSrc,...otherInfo()})}function getWebPageSource(url){return new Promise(function(resolve,reject){let xhr=new XMLHttpRequest;xhr.open("GET",url),xhr.onload=function(){xhr.status===200?resolve(xhr.responseText):reject("HTTP request failed with status code "+xhr.status)},xhr.onerror=function(){reject("Error fetching web page")},xhr.send()})}function processHtmlSourceCode(htmlSourceCode,targetLineNumber,pageTextType,info){if(pageTextType==="html"){const parser=new DOMParser,doc=parser.parseFromString(htmlSourceCode,"text/html"),lines=doc.documentElement.innerHTML.split(` `);getErrorSendTo(lines,targetLineNumber,info)}if(pageTextType==="js"){const lines=htmlSourceCode.split(` `);getErrorSendTo(lines,targetLineNumber,info)}}function getErrorSendTo(lines="",targetLineNumber=0,dataJson,notChecked=!1){let signNum=30,maxCodeLength=2e3;if(!notChecked){if(lines===""||targetLineNumber===0)return!1;if(lines!==""){let code="";for(let k=0;k{xhrRequestError({method:"POST",url:window.location.href,headers:{"Content-Type":"application/json","X-October-Request-Handler":"onGetFrontInfo","X-Requested-With":"XMLHttpRequest"},data:dataJson}).then(function(response){resolve(response)}).catch(function(error){console.error(error),reject(error)})})}function monitorFrontError(dataJson,isShow=1){xhrRequestError({method:"POST",url:window.location.href,headers:{"Content-Type":"application/json","X-October-Request-Handler":"onMonitorFrontError","X-Requested-With":"XMLHttpRequest"},data:dataJson}).then(function(){isShow&&showErrorNotification(dataJson.errorType||"JsError",dataJson.errorMessage)}).catch(function(error){console.error(error)})}function monitorFrontFilesFailed(dataJson){return new Promise((resolve,reject)=>{xhrRequestError({method:"POST",url:window.location.href,headers:{"Content-Type":"application/json","X-October-Request-Handler":"onMonitorFrontFilesFailed","X-Requested-With":"XMLHttpRequest"},data:dataJson}).then(function(response){let res=JSON.parse(response);for(const k in res)showErrorNotification("Some resource files do not exist",res[k].src);resolve(response)}).catch(function(error){reject(error)})})}function xhrRequestError(options){return new Promise(function(resolve,reject){var xhr=new XMLHttpRequest,header;if(xhr.open(options.method,options.url,!0),xhr.onload=function(){xhr.status>=200&&xhr.status<300?resolve(xhr.responseText):reject(xhr.statusText)},xhr.onerror=function(){reject(xhr.statusText)},options.headers)for(header in options.headers)xhr.setRequestHeader(header,options.headers[header]);options.data?xhr.send(JSON.stringify(options.data)):xhr.send()})}function holderFile(url=""){let isHolderArray=["dist/","assets/","files/"],isDomain=verifyAddressIsDomain({src:url});return isHolderArray.some(item=>url.includes(item))&&isDomain}function getCookieValError(name){var prefix=name+"=",end,value,start=document.cookie.indexOf(prefix);return start==-1?"":(end=document.cookie.indexOf(";",start+prefix.length),end==-1&&(end=document.cookie.length),value=document.cookie.substring(start+prefix.length,end),unescape(value))}function verifyAddressIsDomain(obj){if(obj?.src){let src=obj.src.toString(),origin=location.origin;return src.indexOf(origin)>=0}}function stringToLower(str){if(str)return str.toString().toLowerCase()}}catch(e){console.error(e)}連身類|CACO家|知性美感|女神穿搭 - momo-chic 台灣|時尚服飾、海外購物情報站 已加入購物車會員登入收藏購物車新品上市人氣熱銷限時折扣特別企劃上衣類T恤襯衫衛衣針織/毛衣細肩帶/背心風格支線清新學院風韓版優雅風可愛漫畫風百變休閒風洋裝類長洋裝短洋裝印花洋裝牛仔洋裝蕾絲洋裝針織洋裝吊帶褲套裝下著類寬褲長褲牛仔褲裙類內搭褲短褲外套類休閒夾克西裝外套罩衫風衣外套羽絨外套鞋子休閒鞋平底鞋高跟鞋靴子涼鞋內衣泳衣情趣內衣bra內衣內褲居家服/睡衣配件飾品包包墨鏡冰袖皮帶雨具/雨衣襪子圍巾/手套帽/披肩後跟貼SHOP-ALL上身下身連身類貼身內著配件類 連身類最新上架價格由低到高價格由高到低最高人氣【單品可選】氣質不規則慵懶風針織+魚尾半身裙套裝NT$749 (2) 清新韓系學院風假兩件針織毛衣+百褶裙兩件套NT$648 (3) 氣質微奢復古顯瘦收腰針織長洋裝NT$810溫柔風V領流蘇寬鬆綁帶顯瘦長洋裝NT$1,013出游必備法式氣質超仙設計感長洋裝NT$1,013韓系ins風字母過膝個性衛衣長洋裝NT$783推薦熱銷爆款法式復古金絲絨不規則設計感開叉長洋裝NT$1,179名媛小香風小衆拼接法式外套+包臀半身裙套裝NT$1,260 (2) 千金風設計感重工外套+高腰半身裙兩件套NT$2,284【單品可選】氣質優雅復古毛絨拼接吊帶+針織罩衫+魚尾半身裙套裝NT$622【單品可選】設計感溫柔復古披肩+針織+魚尾半身裙套裝NT$698 (2) 【單品可選】復古優雅高級感方領針織+氣質魚尾半身裙套裝NT$688【单品售卖】復古港風短款加厚格紋毛呢外套+高腰顯瘦半身裙套装潮NT$878【单品可选】小香風蝴蝶結套裝設計感絲絨長袖+高腰半身裙兩件套NT$845 (2) 【單品可選】法式富家千金小香風套裝新款緞面襯衫+包臀半身裙兩件套NT$783 (2) 修身氣質設計感露肩高領針織洋裝內搭毛衣包臀短洋裝NT$878 (2) 法式氣質大尺碼女裝全新別緻高級感收腰顯瘦方領小黑裙短洋裝NT$1,062 (2) 時尚休閒大尺碼寬鬆顯瘦美式衛衣+寬褲兩件套運動套裝NT$936純欲辣妹一字肩翻領針織洋裝收腰修身顯瘦包臀裙短洋裝NT$972復古時尚高領麻花針織毛衣+包臀裙半身裙套裝NT$992法式純欲一字肩露鎖骨毛衣洋裝小個子針織收腰短洋裝NT$972 (2) 純欲風禦姐套裝高級感西裝外套+名媛包臀半身短裙兩件套NT$1,260 (2) 小香風流蘇修身顯瘦針織短洋裝NT$891高級感法式小香風氣質娃娃領針織短洋裝NT$1,134設計感一字肩拼接針織短洋裝NT$729【單品可選】韓版鹽系輕熟辣妹牛仔外套+半身裙兩件套NT$729【單品可選】新款減齡學院風格紋娃娃領上衣+拼接A字半身裙兩件套NT$972【全3色】時髦率性一字肩包臀收腰針織短洋裝NT$675 (1) 溫柔好感新款法式復古針織上衣+半身裙套裝NT$1,186 (2) 休閑舒適感寬鬆顯瘦大碼連毛針織長洋裝NT$1,044微性感法式收腰魚尾修身針織包臀長洋裝NT$931 (1) 【單品可選】高級感緞面鰐魚紋襯衫+包臀半身裙套裝NT$999慵懶百搭寬鬆木耳邊娃娃領條紋衛衣短洋裝NT$1,544 (4) 【單品可選】法式復古燈籠袖方領針織+魚尾半身裙套裝NT$810 (6) 懶人時尚寬鬆顯瘦拼接假兩件針織長洋裝NT$729【單品可選】時尚斜領露腰短款衛衣+高腰半身裙套裝NT$1,013 (2) 百搭時髦加厚無袖針織開叉長款毛衣長洋裝NT$942御姐小香風外套+半身裙時尚兩件套NT$798 (1) 高級感優雅氣質絲絨小香風魚尾長洋裝NT$1,204柔軟好穿寬鬆設計感減齡木耳邊長袖短洋裝NT$798輕甜女孩新款方領褶皺設計感寬鬆燈籠袖A字長洋裝NT$918大碼限定時尚印花拼接長款衛衣長洋裝NT$743 (2) 新款重工釘珠掛脖褶皺修身顯瘦包臀性感洋裝NT$1,195法式小香風千金連結拼接外套上衣+時尚氣質包臀半身裙兩件套NT$1,369 (2) 【單品售賣】立領運動小香風顯瘦上衣+長褲套裝NT$1,026 (3) 出游必備高級感小香風長袖針織短洋裝NT$1,214 (2) 新款多巴胺減齡粉色格紋長袖襯衫長洋裝NT$1,125【單品可選】休閑運動衛衣+高腰短裙兩件套NT$675人氣時髦氣質顯瘦修身條紋襯衫polo領包臀短洋裝NT$1,437御姐風法式高級感喇叭袖西裝收腰短洋裝NT$1,035小香風韓版修身顯瘦A字西裝短洋裝NT$1,234簡約純色長袖繫帶收腰設計感長洋裝NT$1,335高級感氣質收腰開叉針織長袖長洋裝NT$1,260【單品可選】韓版寬鬆套頭拼接長袖衛衣+百搭顯瘦半身裙兩件套NT$798【單品可選】時尚名媛氣質小香風上衣+小個子A字半身包臀裙兩件式套裝裙NT$900 (2) 設計感寬鬆休閒木耳邊喇叭袖v領毛衣針織上衣+半身裙套裝NT$1,224運動套裝韓版休閒簡約寬鬆百搭網紅衛衣學生兩件套NT$1,062黑色香風洋裝法式小黑裙兩件套裝NT$1,008 (2) Korea正韓ins新款顯瘦圓領針織長洋裝NT$1,260懶人時尚寬鬆加厚過膝連帽衛衣長洋裝NT$765«12...567891011...3637»
已加入購物車
連身類
【單品可選】氣質不規則慵懶風針織+魚尾半身裙套裝
NT$749
(2)
清新韓系學院風假兩件針織毛衣+百褶裙兩件套
NT$648
(3)
氣質微奢復古顯瘦收腰針織長洋裝
NT$810
溫柔風V領流蘇寬鬆綁帶顯瘦長洋裝
NT$1,013
出游必備法式氣質超仙設計感長洋裝
韓系ins風字母過膝個性衛衣長洋裝
NT$783
推薦熱銷爆款法式復古金絲絨不規則設計感開叉長洋裝
NT$1,179
名媛小香風小衆拼接法式外套+包臀半身裙套裝
NT$1,260
千金風設計感重工外套+高腰半身裙兩件套
NT$2,284
【單品可選】氣質優雅復古毛絨拼接吊帶+針織罩衫+魚尾半身裙套裝
NT$622
【單品可選】設計感溫柔復古披肩+針織+魚尾半身裙套裝
NT$698
【單品可選】復古優雅高級感方領針織+氣質魚尾半身裙套裝
NT$688
【单品售卖】復古港風短款加厚格紋毛呢外套+高腰顯瘦半身裙套装潮
NT$878
【单品可选】小香風蝴蝶結套裝設計感絲絨長袖+高腰半身裙兩件套
NT$845
【單品可選】法式富家千金小香風套裝新款緞面襯衫+包臀半身裙兩件套
修身氣質設計感露肩高領針織洋裝內搭毛衣包臀短洋裝
法式氣質大尺碼女裝全新別緻高級感收腰顯瘦方領小黑裙短洋裝
NT$1,062
時尚休閒大尺碼寬鬆顯瘦美式衛衣+寬褲兩件套運動套裝
NT$936
純欲辣妹一字肩翻領針織洋裝收腰修身顯瘦包臀裙短洋裝
NT$972
復古時尚高領麻花針織毛衣+包臀裙半身裙套裝
NT$992
法式純欲一字肩露鎖骨毛衣洋裝小個子針織收腰短洋裝
純欲風禦姐套裝高級感西裝外套+名媛包臀半身短裙兩件套
小香風流蘇修身顯瘦針織短洋裝
NT$891
高級感法式小香風氣質娃娃領針織短洋裝
NT$1,134
設計感一字肩拼接針織短洋裝
NT$729
【單品可選】韓版鹽系輕熟辣妹牛仔外套+半身裙兩件套
【單品可選】新款減齡學院風格紋娃娃領上衣+拼接A字半身裙兩件套
【全3色】時髦率性一字肩包臀收腰針織短洋裝
NT$675
(1)
溫柔好感新款法式復古針織上衣+半身裙套裝
NT$1,186
休閑舒適感寬鬆顯瘦大碼連毛針織長洋裝
NT$1,044
微性感法式收腰魚尾修身針織包臀長洋裝
NT$931
【單品可選】高級感緞面鰐魚紋襯衫+包臀半身裙套裝
NT$999
慵懶百搭寬鬆木耳邊娃娃領條紋衛衣短洋裝
NT$1,544
(4)
【單品可選】法式復古燈籠袖方領針織+魚尾半身裙套裝
(6)
懶人時尚寬鬆顯瘦拼接假兩件針織長洋裝
【單品可選】時尚斜領露腰短款衛衣+高腰半身裙套裝
百搭時髦加厚無袖針織開叉長款毛衣長洋裝
NT$942
御姐小香風外套+半身裙時尚兩件套
NT$798
高級感優雅氣質絲絨小香風魚尾長洋裝
NT$1,204
柔軟好穿寬鬆設計感減齡木耳邊長袖短洋裝
輕甜女孩新款方領褶皺設計感寬鬆燈籠袖A字長洋裝
NT$918
大碼限定時尚印花拼接長款衛衣長洋裝
NT$743
新款重工釘珠掛脖褶皺修身顯瘦包臀性感洋裝
NT$1,195
法式小香風千金連結拼接外套上衣+時尚氣質包臀半身裙兩件套
NT$1,369
【單品售賣】立領運動小香風顯瘦上衣+長褲套裝
NT$1,026
出游必備高級感小香風長袖針織短洋裝
NT$1,214
新款多巴胺減齡粉色格紋長袖襯衫長洋裝
NT$1,125
【單品可選】休閑運動衛衣+高腰短裙兩件套
人氣時髦氣質顯瘦修身條紋襯衫polo領包臀短洋裝
NT$1,437
御姐風法式高級感喇叭袖西裝收腰短洋裝
NT$1,035
小香風韓版修身顯瘦A字西裝短洋裝
NT$1,234
簡約純色長袖繫帶收腰設計感長洋裝
NT$1,335
高級感氣質收腰開叉針織長袖長洋裝
【單品可選】韓版寬鬆套頭拼接長袖衛衣+百搭顯瘦半身裙兩件套
【單品可選】時尚名媛氣質小香風上衣+小個子A字半身包臀裙兩件式套裝裙
NT$900
設計感寬鬆休閒木耳邊喇叭袖v領毛衣針織上衣+半身裙套裝
NT$1,224
運動套裝韓版休閒簡約寬鬆百搭網紅衛衣學生兩件套
黑色香風洋裝法式小黑裙兩件套裝
NT$1,008
Korea正韓ins新款顯瘦圓領針織長洋裝
懶人時尚寬鬆加厚過膝連帽衛衣長洋裝
NT$765