vue.js

[vue.js] Vue 프로젝트 파일 구조

망고고래 2024. 11. 10. 19:51

  • node_modules: npm으로 설치된 패키지 파일 디렉토리
  • public: 웹팩(webpack)을 통해 관리되지 않는 정적 리소스가 모여있는 디렉토리
  • src/assets: 이미지, css, 폰트 등 관리 디렉토리
  • src/components: vue 컴포넌트 파일 디렉토리
  • App.vue: 최상위(root) 컴포넌트
  • main.js: 가장 먼저 실행되는 자바스크립트 파일. Vue 인스턴스 생성
  • gitignore: 깃허브에 업로드 할 때 제외할 파일 설정
  • babel.config.js: 바벨(Babel) 설정 파일
  • package-lock.json: 설치된 package의 의존성 정보 관리 파일
  • package.json: 프로젝트에 필요한 패키지 정의, 관리 파일
  • README.md: 프로젝트 정보 기록

 

 

package.json

{
  "name": "vue-project",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "core-js": "^3.8.3",
    "vue": "^3.2.13"
  },
  "devDependencies": {
    "@babel/core": "^7.12.16",
    "@babel/eslint-parser": "^7.12.16",
    "@vue/cli-plugin-babel": "~5.0.0",
    "@vue/cli-plugin-eslint": "~5.0.0",
    "@vue/cli-service": "~5.0.0",
    "eslint": "^7.32.0",
    "eslint-plugin-vue": "^8.0.3"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/vue3-essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "@babel/eslint-parser"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead",
    "not ie 11"
  ]
}

 

  • name: 프로젝트 이름
  • version: 프로젝트 버전 정보
  • private: true일 경우 프로젝트를 npm으로 올릴 수 없음.
  • scripts: 프로젝트 실행과 관련된 명령어 등록(npm run으로 실행)
  • dependencies: 사용 중인 패키지 정보
  • devDependencies: 개발시에만 필요한 패키지 정보
  • eslintConfig: ECMAScript/Javascript 코드에서 발견된 패턴을 개발자에게 알려주는 플러그인. 일관성 있게 코드를 작성하고 버그를 식별, 회피하기 위함. 
  • browserslist: 전 세계 사용 통계 속에서 상위 1% 이상 사용된 브라우저, 각 브라우저의 최신 버전 2개를 지원
  •