/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.push({type:"img_load_error",src:e.target.src}):stringToLower(e.target.tagName)==="script"&&e.target.src&&holderFile(e.target.src)?loadFailed.push({type:"js_load_error",src:e.target.src}):stringToLower(e.target.tagName)==="link"&&e.target.href&&holderFile(e.target.href)&&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")))},window.addEventListener("load",function(){let mergeErrorMessage=errorMessageArr.concat(errorSignificanceMessageArr);fileLoadFailedFun(),jsExceptionFun(mergeErrorMessage),setPageLoadTimestamp()});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 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){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)}上衣|女性時尚 - vivi-look 台灣|流行時尚女裝 已加入購物車 會員登入收藏購物車所有商品新品上市人氣熱銷限時折扣特別企劃加一元 多一件上衣類T恤襯衫衛衣針織/毛衣細肩帶/背心風格支線清新學院風韓版優雅風可愛漫畫風百變休閒風洋裝類長洋裝短洋裝印花洋裝牛仔洋裝蕾絲洋裝針織洋裝吊帶褲套裝下著類寬褲長褲牛仔褲裙類內搭褲短褲鞋子休閒鞋平底鞋高跟鞋靴子涼鞋外套類休閒夾克西裝外套罩衫風衣外套羽絨外套內衣泳衣情趣內衣bra內衣內褲居家服/睡衣配件飾品包包墨鏡冰袖皮帶雨具/雨衣襪子圍巾/手套帽/披肩後跟貼 上衣類最新上架價格由低到高價格由高到低最高人氣強檔驚喜休閒印花圓領寬鬆短袖T恤NT$621 (114)新品來襲甜美溫柔氣質蕾絲鏤空襯衫NT$900 (372)新品【全6色】知性美型純色寬鬆v領慵懶短款針織衫NT$758 NT$1,083新品人氣設計感不規則拼接收腰氣質顯瘦T恤NT$847 NT$1,210新品溫柔好感設計感肌理面料V領木耳邊氣質T恤NT$709 NT$1,013 (5)新品推薦款柔軟氣質撞色條紋設計感長袖針織T恤NT$615 NT$878新品超柔親膚百搭圓領打底衫長袖T恤女NT$782 NT$1,117新品韓版簡約復古條紋襯衣外套寬鬆休閑長袖NT$926 NT$1,323 (8)時尚休閒設計感拼接條紋撞色燈籠袖襯衫NT$1,013 (5)強力推薦簡約素色翻領五分袖襯衫NT$743 (109)韓系設計感溫柔斜肩素面設計感短袖T恤NT$702 (120)人氣熱銷韓版chic氣質百搭條紋/素面小眾翻領無袖T恤NT$911 (109)溫柔復古時尚印花v領七分袖雪紡襯衫NT$878 (33)知性亮眼休閑經典款撞色假兩件修身顯瘦內搭上衣NT$1,013 (22)【5色】日韓慵懶風不規則時尚百搭設計感短袖T恤NT$527 (111)新品氣質微奢 時尚遮肚假兩件短版設計感氣質打底衫NT$473 NT$675新品韓風氣質套頭寬鬆冰絲針織短袖T恤NT$591 NT$844新品時尚薄款高級感雪紡紗七分袖襯衫NT$1,127 NT$1,609 (7)新品慵懶百搭純棉正肩低V領顯瘦長袖T恤NT$690 NT$985新品時髦率性假兩件拉繩V領彩虹色條紋針織衫短袖NT$926 NT$1,323新品簡約休閑海軍風條紋撞色大翻領拼接短袖T恤NT$690 NT$985新品時尚設計感韓國版蝙蝠袖針織衫女寬鬆顯瘦遮肉打底上衣NT$544 NT$777新品韓國設計感寬鬆套頭顯瘦鏤空百搭針織衫罩衫慵懶上衣NT$555 NT$793新品復古寬鬆疊穿打底背心外搭無袖V領針織馬甲NT$591 NT$844韓版簡約百搭氣質兩粒扣v領短袖T恤NT$598 (33)超好看通勤百搭釘珠T恤女秋新款圓領寬鬆長袖上衣NT$855新品氣質微奢秋季百搭女士大碼圓領條紋寬鬆針織打底衫NT$847 NT$1,210 (7)新品溫柔好感荷葉領寬鬆顯瘦設計感娃娃領襯衫NT$670 NT$957新品慵懶風秋款多色寬鬆長袖針織衫外搭上衣鏤空罩衫NT$567 NT$810【5色】氣質優雅復古緞面堆堆領短袖T恤NT$688韓版鏤空不規則顯瘦遮肉短款長袖打底衫NT$830新品時髦率性知性斑馬紋翻領單排扣襯衫NT$787 NT$1,124 (7)新品柔軟森系法式氣質波點印花百搭泡泡袖寬鬆上衣襯衫NT$567 NT$810新品知性亮眼溫柔泡泡袖後背紐扣針織T恤NT$686 NT$979新品復古印花長袖設計感小眾時尚顯瘦洋氣襯衣NT$769 NT$1,098極簡魅力純色薄款不規則開叉打底衫內搭長袖T恤NT$720新品時髦扎染露肩條紋長袖顯瘦疊穿針織背心兩件套NT$945 NT$1,350新品慵懶風復古條紋秋季寬鬆打底衫百搭長袖T恤上衣NT$497 NT$709全4色氣質收腰顯瘦設計感小眾輕熟長袖百搭上衣雪紡襯衫NT$1,022新品清新韓系新款鏤空冰絲長袖針織衫短款外搭套頭防曬罩衫長袖NT$709 NT$1,013新品優雅圓領疊穿休閒肌理感針織長袖T恤NT$749 NT$1,069新品優雅氣質復古蕾絲拼接針織T恤NT$846 NT$1,208新品經典爆款春秋莫代爾t恤顯瘦大方領打底衫NT$662 NT$945知性亮眼方領小香風純棉撞色減齡寬鬆顯瘦套頭T恤NT$810必備百搭款時尚洋氣質寬鬆短袖上衣雪紡衫女襯衫NT$968溫柔好感法式優雅氣質立領鏤空溫柔小眾泡泡袖掛脖襯衫NT$990舒服軟糯好感寬鬆耐久性設計感紋理褶皺打底長袖遮肉上衣NT$900簡約好搭舒服軟糯打褶收腰V領小飛袖針織上衣NT$594簡約好搭大尺碼韓版假兩件圓領大學t衛衣NT$1,080 (11)百搭時髦經典圓領氣質寬鬆緞面襯衫NT$643 (82)法式時尚減齡寬鬆顯瘦遮肚釘珠燈籠袖雪紡衫NT$1,133 (6)式設計感鏤空寬鬆長袖圓領針織衫顯瘦流蘇罩衫上衣NT$810 (7)半價本週新品經典款V領紐扣針織T恤NT$670 NT$1,340 (714)日韓慵懶風簡約側邊剪拼接設計寬鬆圓領短袖T恤NT$459 (26)新品【三色可選】大尺碼限定胖妹妹設計感新款小衆不規則開叉短袖T恤遮肉顯瘦上衣NT$788 NT$1,125新品氣質微奢【全四色】時尚内搭螺紋修身洋氣打底上衣女裝NT$662 NT$945新品【全五色】限時特惠早秋新款寬鬆休閑百搭半高領純色長袖T恤NT$873 NT$1,247新款韓版寬鬆拼接長袖襯衣假兩件休閒印花圓領襯衫NT$855 (11)知性美型時尚蝙蝠袖鏤空薄款針織NT$731 (117)韓國chic氣質小性感一字領露肩修身顯瘦條紋短袖針織T恤NT$485 (180)«12345678...5758»
已加入購物車
上衣類
強檔驚喜休閒印花圓領寬鬆短袖T恤
NT$621
(114)
新品來襲甜美溫柔氣質蕾絲鏤空襯衫
NT$900
(372)
【全6色】知性美型純色寬鬆v領慵懶短款針織衫
NT$758 NT$1,083
人氣設計感不規則拼接收腰氣質顯瘦T恤
NT$847 NT$1,210
溫柔好感設計感肌理面料V領木耳邊氣質T恤
NT$709 NT$1,013
(5)
推薦款柔軟氣質撞色條紋設計感長袖針織T恤
NT$615 NT$878
超柔親膚百搭圓領打底衫長袖T恤女
NT$782 NT$1,117
韓版簡約復古條紋襯衣外套寬鬆休閑長袖
NT$926 NT$1,323
(8)
時尚休閒設計感拼接條紋撞色燈籠袖襯衫
NT$1,013
強力推薦簡約素色翻領五分袖襯衫
NT$743
(109)
韓系設計感溫柔斜肩素面設計感短袖T恤
NT$702
(120)
韓版chic氣質百搭條紋/素面小眾翻領無袖T恤
NT$911
溫柔復古時尚印花v領七分袖雪紡襯衫
NT$878
(33)
知性亮眼休閑經典款撞色假兩件修身顯瘦內搭上衣
(22)
【5色】日韓慵懶風不規則時尚百搭設計感短袖T恤
NT$527
(111)
氣質微奢 時尚遮肚假兩件短版設計感氣質打底衫
NT$473 NT$675
韓風氣質套頭寬鬆冰絲針織短袖T恤
NT$591 NT$844
時尚薄款高級感雪紡紗七分袖襯衫
NT$1,127 NT$1,609
(7)
慵懶百搭純棉正肩低V領顯瘦長袖T恤
NT$690 NT$985
時髦率性假兩件拉繩V領彩虹色條紋針織衫短袖
簡約休閑海軍風條紋撞色大翻領拼接短袖T恤
時尚設計感韓國版蝙蝠袖針織衫女寬鬆顯瘦遮肉打底上衣
NT$544 NT$777
韓國設計感寬鬆套頭顯瘦鏤空百搭針織衫罩衫慵懶上衣
NT$555 NT$793
復古寬鬆疊穿打底背心外搭無袖V領針織馬甲
韓版簡約百搭氣質兩粒扣v領短袖T恤
NT$598
超好看通勤百搭釘珠T恤女秋新款圓領寬鬆長袖上衣
NT$855
氣質微奢秋季百搭女士大碼圓領條紋寬鬆針織打底衫
溫柔好感荷葉領寬鬆顯瘦設計感娃娃領襯衫
NT$670 NT$957
慵懶風秋款多色寬鬆長袖針織衫外搭上衣鏤空罩衫
NT$567 NT$810
【5色】氣質優雅復古緞面堆堆領短袖T恤
NT$688
韓版鏤空不規則顯瘦遮肉短款長袖打底衫
NT$830
時髦率性知性斑馬紋翻領單排扣襯衫
NT$787 NT$1,124
柔軟森系法式氣質波點印花百搭泡泡袖寬鬆上衣襯衫
知性亮眼溫柔泡泡袖後背紐扣針織T恤
NT$686 NT$979
復古印花長袖設計感小眾時尚顯瘦洋氣襯衣
NT$769 NT$1,098
極簡魅力純色薄款不規則開叉打底衫內搭長袖T恤
NT$720
時髦扎染露肩條紋長袖顯瘦疊穿針織背心兩件套
NT$945 NT$1,350
慵懶風復古條紋秋季寬鬆打底衫百搭長袖T恤上衣
NT$497 NT$709
全4色氣質收腰顯瘦設計感小眾輕熟長袖百搭上衣雪紡襯衫
NT$1,022
清新韓系新款鏤空冰絲長袖針織衫短款外搭套頭防曬罩衫長袖
優雅圓領疊穿休閒肌理感針織長袖T恤
NT$749 NT$1,069
優雅氣質復古蕾絲拼接針織T恤
NT$846 NT$1,208
經典爆款春秋莫代爾t恤顯瘦大方領打底衫
NT$662 NT$945
知性亮眼方領小香風純棉撞色減齡寬鬆顯瘦套頭T恤
NT$810
必備百搭款時尚洋氣質寬鬆短袖上衣雪紡衫女襯衫
NT$968
溫柔好感法式優雅氣質立領鏤空溫柔小眾泡泡袖掛脖襯衫
NT$990
舒服軟糯好感寬鬆耐久性設計感紋理褶皺打底長袖遮肉上衣
簡約好搭舒服軟糯打褶收腰V領小飛袖針織上衣
NT$594
簡約好搭大尺碼韓版假兩件圓領大學t衛衣
NT$1,080
(11)
百搭時髦經典圓領氣質寬鬆緞面襯衫
NT$643
(82)
法式時尚減齡寬鬆顯瘦遮肚釘珠燈籠袖雪紡衫
NT$1,133
(6)
式設計感鏤空寬鬆長袖圓領針織衫顯瘦流蘇罩衫上衣
本週新品經典款V領紐扣針織T恤
NT$670 NT$1,340
(714)
日韓慵懶風簡約側邊剪拼接設計寬鬆圓領短袖T恤
NT$459
(26)
【三色可選】大尺碼限定胖妹妹設計感新款小衆不規則開叉短袖T恤遮肉顯瘦上衣
NT$788 NT$1,125
氣質微奢【全四色】時尚内搭螺紋修身洋氣打底上衣女裝
【全五色】限時特惠早秋新款寬鬆休閑百搭半高領純色長袖T恤
NT$873 NT$1,247
新款韓版寬鬆拼接長袖襯衣假兩件休閒印花圓領襯衫
知性美型時尚蝙蝠袖鏤空薄款針織
NT$731
(117)
韓國chic氣質小性感一字領露肩修身顯瘦條紋短袖針織T恤
NT$485
(180)