MRM으로 JS 프로젝트 템플릿 작성

머리말



목적



Mrmjs는 미리 설정된 사양에 따라 다양한 구성 파일을 생성하여 JavaScript 애플리케이션을 설정하기 위한 템플릿 도구입니다. 이는 특정 구성 파일이 필요한 응용 프로그램의 각 종속성에 대해 미리 만들어진 작업 또는 사용자 지정 작업을 실행하여 수행됩니다. 하지만 그 전에 mrm을 설치해야 합니다.

설치



전역적으로 mrm을 설치하는 명령은 다음과 같습니다.npm install -g mrm구성 파일을 생성하는 사용자 지정 작업을 만들 준비를 하려면 홈 디렉터리로 이동합니다. ".mrm"이라는 디렉토리를 만듭니다. 해당 폴더로 이동하여 "config.json"이라는 파일을 만든 후 다음 명령을 실행합니다.npm install mrm-core이러한 단계를 수행하면 아래에 설명된 대로 미리 만들어진 작업을 실행하고 자신만의 작업을 생성할 준비가 된 것입니다.

구현


미리 만들어진 작업



Mrm은 도구가 일반적으로 사용되는 일련의 미리 만들어진 작업과 함께 제공됩니다. 예를 들어 .eslintrc 파일을 생성하는 작업, package.json 파일을 생성하는 또 다른 작업 등이 있습니다. 이러한 작업은 website 에서 찾을 수 있으며 다음과 같이 프로젝트 디렉토리에서 실행할 수 있습니다.mrm <taskname><taskname>를 실행할 작업의 이름으로 바꿉니다. 구성 파일이 생성되는 방법을 더 자세히 제어하려면 mrm-core를 사용하여 사용자 지정 작업을 만드는 방법을 계속 읽으십시오.

작업 사용자 지정



종종 개발자가 린터, 로더, 빌더 등의 도구 집합을 확장하기 시작하면 처음부터 응용 프로그램을 개발할 때 항상 사용하는 기본 설정 및 특정 설정을 개발하기 시작합니다. Mrm-core는 명령으로 원하는 거의 모든 것을 생성하는 작업을 생성할 수 있는 라이브러리입니다. 작업을 만들려면 먼저 만든 .mrm 디렉터리로 이동한 다음 만들려는 작업의 이름을 딴 새 디렉터리를 만듭니다. 새 디렉터리 안에 index.js 파일을 만듭니다. 해당 파일 내에서 mrm-core 라이브러리를 사용하여 작업을 사용자 지정합니다. 만들 수 있는 파일 유형이 몇 가지 있으므로 아래 예는 구성에 대한 가장 일반적인 파일 유형 중 하나인 .json의 예입니다.

예시



사용자 지정 작업을 생성하는 방법을 시연하기 위해 여기서는 eslintairbnb라는 사용자 지정 eslint 작업을 보여드리겠습니다.

// in the index.js file of the eslintairbnb directory
// import the mrm-core tools you need for the task
// json will help with creating .eslintrc and lines will be used to create .eslintignore
const { json, lines } = require('mrm-core');
// export the task
module.exports = function eslintAirBnb() {
  // create the json file
  json('.eslintrc')
  // use .set to create the json object (you can use merge to update an existing object instead)
  .set({
    // add your preferred eslint settings
    "extends": ["eslint:recommended", "airbnb", "airbnb/hooks"],

    "env": {

      "es6": true,

      "browser": true

    },

    "parserOptions": {

      "sourceType": "module",

      "ecmaVersion": 9,

      "ecmaFeatures": {

        "jsx": true

      }

    },

    "rules": {

      "import/extensions": ["warn", "always", {"ignorePackages": true}],

      "no-unused-vars": ["warn", { "vars": "local", "args": "after-used", "ignoreRestSiblings": false }],

      "no-use-before-define": ["off"],

      "no-shadow": ["off"]

    }

  })
  // save the new file
  .save();
  // while we are at it lets make a .eslintignore file
  lines('.eslintignore')

  .add([

    '**/.eslint*',

    '**/.vscode',

    '**/node_modules',

    '**/dist'

  ])

  .save();

};


요약



궁극적으로 Mrm의 가치는 새로운 JavaScript 애플리케이션을 얼마나 자주 가동하느냐에 달려 있습니다. 동일한 파일을 생성하고, 동일한 구성을 조정하고, 동일한 파일 트리를 일관되게 템플릿화한 경우 Mrm을 사용해 보십시오. 작업을 설정하기 위한 초기 투자는 향후 응용 프로그램에서 절약되는 시간을 쉽게 초과할 것입니다.

좋은 웹페이지 즐겨찾기