/g,"").replace(/\//g,""),localStorage.setItem("lastPageClickDom",lastClickDom),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),localStorage.removeItem("lastClickDom"),localStorage.removeItem("lastVisitPage")}).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 monitorFrontPageIsFound(){return new Promise((resolve,reject)=>{xhrRequestError({method:"GET",url:window.location.href}).then(function(response){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內衣內褲居家服/睡衣泳衣配件飾品包包襪子圍巾/手套帽/披肩雨具/雨衣墨鏡冰袖皮帶後跟貼 外套類最新上架價格由低到高價格由高到低最高人氣半價 折$300期待與驚喜的碰撞,在一無所知的日子中發現有趣的事~ 快來開啟、現貨秒發、即日出貨、先到先得!NT$388 NT$776 (185)半價【全3色】慵懶風純色連帽針織外套NT$670 NT$1,340 (463)半價【全8色】曡穿毛呢A字斗篷大衣NT$505 NT$1,010 (356)半價知性美型時尚撞色短款加厚寬鬆麵包服羽絨外套NT$998 NT$1,995 (258)半價寬鬆顯瘦加厚麵包服外套NT$918 NT$1,836 (37)半價百搭寬鬆羽絨棉馬甲NT$670 NT$1,340 (122)半價韓版寬鬆加厚連帽/立領保暖一體絨毛毛外套休閒夾克NT$862 NT$1,723 (397)半價【全7色】必備款内刷毛保暖大毛領派克棉服NT$1,241 NT$2,481 (38)半價【7色】韓版寬鬆顯瘦毛絨拉鏈防風羽絨棉服NT$862 NT$1,723 (188)半價韓版時尚率性百搭內刷毛派克服羽絨棉服NT$1,230 NT$2,460 (27)半價【全3色】外傳羊羔毛背心坎肩外套NT$570 NT$1,139 (10)半價簡約菱格款設計感棉服NT$1,155 NT$2,309 (37)新品 半價圓領時尚拼色棒球服針織外套NT$747 NT$1,493 (9)半價居家時尚中長款加厚連帽棉服外套NT$981 NT$1,961 (33)新品 半價文青風高級感長風衣外套NT$727 NT$1,454 (6)半價個性休閑風内刷毛連帽衛衣外套NT$765 NT$1,530 (96)半價基本款顯瘦娃娃領愛心扣呢子大衣NT$612 NT$1,224 (115)半價百搭加厚毛絨連帽牛仔外套NT$651 NT$1,301 (163)半價高品質加厚超保暖慵懶風愛心刺繡厚麵包服羽絨外套NT$1,161 NT$2,321 (40)半價舒服軟糯好感慵懶風百搭單排扣v領寬鬆針織開衫罩衫NT$804 NT$1,607 (340)新品 半價美人首選鏤空薄款針織開衫NT$643 NT$1,286 (7)新品 半價氣質高級感西裝領短款毛呢外套NT$1,292 NT$2,583 (8)新品 半價【全7色】圓領寬鬆顯瘦金屬扣針織衫NT$765 NT$1,530 (8)新品 半價韓版百搭羊羔毛短外套NT$747 NT$1,493 (11)半價【全3色】爆款百搭連帽水貂絨外套NT$736 NT$1,471 (10)半價時尚韓版保暖寬鬆立領長款面包服棉服NT$1,019 NT$2,037 (30)半價洋氣大碼寬鬆加厚馬甲坎肩外套NT$727 NT$1,454 (90)半價【全4色】大碼限定加厚雙面翻領毛呢外套NT$709 NT$1,417 (30)半價大碼限定羊羔毛連帽外套NT$1,291 NT$2,581 (27)半價【全5色】時尚毛領内刷毛棉服NT$1,306 NT$2,612 (5)半價高檔洋氣顯瘦加厚風衣外套NT$957 NT$1,913 (11)半價休閑顯瘦高級感毛呢大衣外套NT$880 NT$1,760 (67)半價休閑款内刷毛印花棒球服衛衣外套NT$986 NT$1,972 (25)半價高級感寬鬆長款呢子大衣外套NT$840 NT$1,680 (28)半價韓系學院風牛角扣仿羊羔毛大衣外套NT$900 NT$1,799 (6)半價經典款加厚連帽韓版派克服NT$747 NT$1,493 (11)半價時尚韓系復古格紋毛呢外套NT$632 NT$1,264 (5)半價寬鬆慵懶風時尚百搭連帽拉鏈衛衣外套休閒夾克NT$612 NT$1,224 (26)半價韓版寬鬆簡約百搭連帽保暖無袖中長款棉馬甲休閒外套NT$820 NT$1,639 (8)半價氣質微奢小香風千鳥格設計感加厚休閑夾克NT$1,655 NT$3,310 (31)半價個性風格時尚拼接牛仔設計感撞色西裝外套NT$1,451 NT$2,902 (101)半價秋冬新品韓版格紋撞色翻領紐扣西裝外套NT$1,187 NT$2,374 (89)半價人氣新品絕對要買經典款顯瘦中長款毛呢大衣風衣外套NT$935 NT$1,870 (148)半價韓國風尚高級感新款簡約過膝長款呢子大衣風衣外套NT$1,161 NT$2,321 (94)半價超好搭配時尚優雅翻領格紋紐扣休閒夾克NT$689 NT$1,377 (663)新品 半價減齡立領仿水貂絨針織開衫NT$938 NT$1,876 (11)新品 半價百搭時尚無袖寬鬆羽絨棉馬甲NT$765 NT$1,530 (7)半價ins潮流内刷毛連帽羊羔絨外套NT$727 NT$1,454 (70)半價必備百搭款pu皮短款立領加厚麵包服NT$1,084 NT$2,168 (8)半價韓版時尚大尺碼寬鬆不規則斗篷毛呢大衣外套NT$1,264 NT$2,528 (7)半價爆款新款高階氣質中長款加厚保暖連帽棉衣棉服外套NT$1,237 NT$2,474 (10)半價必備百搭款寬鬆保暖麵包服NT$728 NT$1,456 (6)半價保暖好看韓系復古慵懶風寬鬆針織連帽加厚毛衣開襟衫NT$594 NT$1,187 (7)半價慵懶風復古寬鬆麻花連帽針織開衫外套NT$850 NT$1,699 (11)半價韓版寬鬆百搭格子西裝毛呢外套NT$981 NT$1,961 (10)半價英倫風率性時尚休閒百搭高級感風衣外套NT$1,172 NT$2,343 (423)半價【全4色】簡約百搭保暖加厚羽絨棉服NT$1,115 NT$2,229 (11)半價流行款百搭防水貂絨開衫NT$957 NT$1,913 (28)半價【全4色】休閑顯瘦人字紋毛呢外套NT$957 NT$1,913 (29)半價韓版立領加厚寬鬆麵包服羽絨棉衣外套NT$979 NT$1,957 (12)«12345678...1819»
已加入購物車
外套類
期待與驚喜的碰撞,在一無所知的日子中發現有趣的事~ 快來開啟、現貨秒發、即日出貨、先到先得!
NT$388 NT$776
(185)
【全3色】慵懶風純色連帽針織外套
NT$670 NT$1,340
(463)
【全8色】曡穿毛呢A字斗篷大衣
NT$505 NT$1,010
(356)
知性美型時尚撞色短款加厚寬鬆麵包服羽絨外套
NT$998 NT$1,995
(258)
寬鬆顯瘦加厚麵包服外套
NT$918 NT$1,836
(37)
百搭寬鬆羽絨棉馬甲
(122)
韓版寬鬆加厚連帽/立領保暖一體絨毛毛外套休閒夾克
NT$862 NT$1,723
(397)
【全7色】必備款内刷毛保暖大毛領派克棉服
NT$1,241 NT$2,481
(38)
【7色】韓版寬鬆顯瘦毛絨拉鏈防風羽絨棉服
(188)
韓版時尚率性百搭內刷毛派克服羽絨棉服
NT$1,230 NT$2,460
(27)
【全3色】外傳羊羔毛背心坎肩外套
NT$570 NT$1,139
(10)
簡約菱格款設計感棉服
NT$1,155 NT$2,309
圓領時尚拼色棒球服針織外套
NT$747 NT$1,493
(9)
居家時尚中長款加厚連帽棉服外套
NT$981 NT$1,961
(33)
文青風高級感長風衣外套
NT$727 NT$1,454
(6)
個性休閑風内刷毛連帽衛衣外套
NT$765 NT$1,530
(96)
基本款顯瘦娃娃領愛心扣呢子大衣
NT$612 NT$1,224
(115)
百搭加厚毛絨連帽牛仔外套
NT$651 NT$1,301
(163)
高品質加厚超保暖慵懶風愛心刺繡厚麵包服羽絨外套
NT$1,161 NT$2,321
(40)
舒服軟糯好感慵懶風百搭單排扣v領寬鬆針織開衫罩衫
NT$804 NT$1,607
(340)
美人首選鏤空薄款針織開衫
NT$643 NT$1,286
(7)
氣質高級感西裝領短款毛呢外套
NT$1,292 NT$2,583
(8)
【全7色】圓領寬鬆顯瘦金屬扣針織衫
韓版百搭羊羔毛短外套
(11)
【全3色】爆款百搭連帽水貂絨外套
NT$736 NT$1,471
時尚韓版保暖寬鬆立領長款面包服棉服
NT$1,019 NT$2,037
(30)
洋氣大碼寬鬆加厚馬甲坎肩外套
(90)
【全4色】大碼限定加厚雙面翻領毛呢外套
NT$709 NT$1,417
大碼限定羊羔毛連帽外套
NT$1,291 NT$2,581
【全5色】時尚毛領内刷毛棉服
NT$1,306 NT$2,612
(5)
高檔洋氣顯瘦加厚風衣外套
NT$957 NT$1,913
休閑顯瘦高級感毛呢大衣外套
NT$880 NT$1,760
(67)
休閑款内刷毛印花棒球服衛衣外套
NT$986 NT$1,972
(25)
高級感寬鬆長款呢子大衣外套
NT$840 NT$1,680
(28)
韓系學院風牛角扣仿羊羔毛大衣外套
NT$900 NT$1,799
經典款加厚連帽韓版派克服
時尚韓系復古格紋毛呢外套
NT$632 NT$1,264
寬鬆慵懶風時尚百搭連帽拉鏈衛衣外套休閒夾克
(26)
韓版寬鬆簡約百搭連帽保暖無袖中長款棉馬甲休閒外套
NT$820 NT$1,639
氣質微奢小香風千鳥格設計感加厚休閑夾克
NT$1,655 NT$3,310
(31)
個性風格時尚拼接牛仔設計感撞色西裝外套
NT$1,451 NT$2,902
(101)
秋冬新品韓版格紋撞色翻領紐扣西裝外套
NT$1,187 NT$2,374
(89)
人氣新品絕對要買經典款顯瘦中長款毛呢大衣風衣外套
NT$935 NT$1,870
(148)
韓國風尚高級感新款簡約過膝長款呢子大衣風衣外套
(94)
超好搭配時尚優雅翻領格紋紐扣休閒夾克
NT$689 NT$1,377
(663)
減齡立領仿水貂絨針織開衫
NT$938 NT$1,876
百搭時尚無袖寬鬆羽絨棉馬甲
ins潮流内刷毛連帽羊羔絨外套
(70)
必備百搭款pu皮短款立領加厚麵包服
NT$1,084 NT$2,168
韓版時尚大尺碼寬鬆不規則斗篷毛呢大衣外套
NT$1,264 NT$2,528
爆款新款高階氣質中長款加厚保暖連帽棉衣棉服外套
NT$1,237 NT$2,474
必備百搭款寬鬆保暖麵包服
NT$728 NT$1,456
保暖好看韓系復古慵懶風寬鬆針織連帽加厚毛衣開襟衫
NT$594 NT$1,187
慵懶風復古寬鬆麻花連帽針織開衫外套
NT$850 NT$1,699
韓版寬鬆百搭格子西裝毛呢外套
英倫風率性時尚休閒百搭高級感風衣外套
NT$1,172 NT$2,343
(423)
【全4色】簡約百搭保暖加厚羽絨棉服
NT$1,115 NT$2,229
流行款百搭防水貂絨開衫
【全4色】休閑顯瘦人字紋毛呢外套
(29)
韓版立領加厚寬鬆麵包服羽絨棉衣外套
NT$979 NT$1,957
(12)