香港居民 359

[Vue-Router] route match regular expression

라우트 경로를 정규표현식을 사용하여 표현할수 있습니다.const routes = [ { name: 'login', path: '/regex/:id(\\d), // 대부분의 정규표현식의 사용이 가능합니다. path: '/regex/:id()\\d+) component: import('@views/login-view.vue') }] 위와 같이 선언할 경우 /regex/123 같은 url 경로에도 login-view 페이지가 보여집니다. 그리고 아래와 같이 선언할 경우 /regex/id 이후에 붙는 모든 /id(/number) 가 동일하게 매칭됩니다.const routes = [ { name: 'login', path: '/regex/:id(\\d+)+, com..

코드/Nuxt3 2024.12.22

[Vue-Router] isNavigationFailure, NavigationFailureType

Router 이동시 navigation error 가 발생하는 경우가 종종 있습니다.navigation guide 혹은, 다른 라우터 이동중인데 다른 라우터 이동이 발생한다던가 하는 등 실제 서비스 환경에서는 여러가지 상황이 발생합니다.상황은 여러가지지만 라우터 에러 처리를 위해서 에러를 캐치해야 합니다.다음과 같이 임의로 에러를 발생시킵니다. All Destinations Trigger Router Error  Home.vue에서 home 으로 라우트 이동시키면 router dupllicated  오류가 발생합니다.router.push 는 정상적인 라우트 이동이 이루어질 경우 undefined 를 반환합니다.(vue 3 버전의 vue-router 4.x )아무 것도 반..

코드/Nuxt3 2024.12.22

[vue-router] Extraneous non-props attributes (experienceSlug) were passed to component but could not be automatically inherited because component renders fragment or text root nodes.

vue router 를 중첩 라우팅 처리하면서 발생한 이슈입니다.컴포넌트에 전달된 속성(attribute)가 렌더링 과정에서 적절히 처리되지 못했을 경우에 발생합니다. experienceSlug 라는 속성을 컴포너트에 전달했지만, 해당 속성이 컴포넌트 내부에서 명시적으로 처리되지 않았거나, 컴포넌트가 Fragment 또는 텍스트 노드만 반환하는 경우 발생합니다.Vue 3에서 기본적으로 props가 아닌 속성(non-props attributes)은 루트 엘리먼트로 자동으로 전달됩니다. 하지만 컴포넌트가 Fragment나 텍스트 노드를 반환할 경우 속성을 전달할 루트 엘리먼트가 없어 이 경고가 발생합니다. router-view 는 상위 app.vue에 존재합니다.{ name: 'destination'..

카테고리 없음 2024.12.06

[Node] url.fileURLToPath, path.resolve

url.fileURLToPath와 path.resolve는 각각 다른 방식으로 파일 경로를 처리하며, 서로 다른 목적을 가지고 있습니다.Node.js 환경에서 파일 경로를 다룰 때 유용하지만, 사용하는 상황에 따라 차이가 있습니다. 1. url.fileURLToPathurl.fileURLToPath는 URL 객체나 file URL 문자열을 로컬 파일 경로로 변환합니다.주로 file:// 스킴으로 시작하는 파일 URL을 일반 파일 시스템 경로로 변환할 때 사용됩니다. 예를 들어, URL 객체를 통해 파일 경로를 설정하거나 읽을 때 유용합니다.import { fileURLToPath } from 'url';const fileURL = new URL('file:///Users/example/path/to/fi..

코드/Node 2024.11.14

[Vue] Router History mode & Hash mdode

Vue Router 에는 HTML 5 History mode와 Hash 모드 두 가지가 존재합니다.import { createRouter, createWebHistory, createWebHashHistory } from 'vue-router';const router: Router = createRouter({ history: createWebHistory(), //history: createWebHashHistory(), routes: [ {name: 'home', path: '/', component: Home} ]}); 차이는 간단합니다URL 을 보면// web historyhttps://localhost:5173/brazil// hash historyhttps://localhost:5..

코드/Nuxt3 2024.11.12

[Vite] Cannot find type definition file for 'vite/client'. The file is in the program because: Entry point of type library 'vite/client' specified in compilerOptions

Vite 의 경우 typeRoots 의 설정이 조금 더 필요합니다.Vite 의 타입파일은 node_modules/vite 아래에 존재합니다.node_modules/vite/types node_modules/vite 는 일반적인 경우와 다르게 node_modules/@types 가 타입 루트가 아님으로 별도로 설정을 해줘야 합니다.tsconfig.js 파일에서 아래와 같이 추가 합니다.{ // https://nuxt.com/docs/guide/concepts/typescript "extends": "./.nuxt/tsconfig.json", "compilerOptions": { "types": [ "@pinia/nuxt", "vite/client", "./types/..

코드/Npm 2024.10.25

[Docker] Image pull

hub.docker.com 에 업로드된 이미지를 다운로드한다.# 로컬에 있는 도커 이미지를 모두 삭제한다> docker image prune -aWARNING! This will remove all images without at least one container associated to them.Are you sure you want to continue? [y/N] yDeleted Images:deleted: sha256:c94415d27e2f87f98f11e047e6b5b4b0bfd5e3b9fb2326eba8f2e8080cf39b09deleted: sha256:63a51fc658aca7e1cd40d8bc21c9db3f7eec153486b583a2682ef11cb9ebf950> docker imag..

코드/CI-CD-Docker 2024.09.13