"이 경로로 이 파일,, 을 가져오지 않으려면"을 규칙화합니다.
5997 단어 TypeScriptESLintsolid 원칙tech
여러분'SOLID 원칙'에 대해서 얼마나 알고 계세요?
소프트웨어 개발에서 유지하기 쉬운 코드를 쓰는 것은 매우 중요한 요소이다.
이번에는 D(Dependency inversion principle)가'의존적 반전의 원칙'에 해당하는 내용이다.
대상 경로를 통해 대상 파일을 가져오는 것을 금지하는 메커니즘을 만들어 보았다.
일본어 기사를 찾지 못했기 때문에 시작하고 싶은 분들은 이 기사를 참고해서 프로젝트를 가져올 수 있나요?
이번 실크 PR은 다음과 같은 내용을 담고 있다.
설치하다.
의존성 반전의 원칙에 대해서는 다음과 같은 글을 참고하시기 바랍니다.여기에 규칙의 설정 방법을 설명한다.
사용할 프로그램 라이브러리는
eslint-plugin-import
입니다.당신들의 관리자에게 감사 드립니다.npm install --save-dev eslint eslint-plugin-import
npm install --save-dev eslint-import-resolver-typescript # TypeScriptのimport構文を対応させるためのもの
.eslintrc
여기 있습니다.module.exports = {
extends: [
"plugin:import/recommended",
"plugin:import/typescript",
],
// TypeScriptの場合は以下も追加
settings: {
"import/resolver": {
typescript: {},
},
},
}
import/no-restriced-paths 설정
import 플러그인
import/no-restricted-paths
에서 가져올 수 있는 경로를 제한합니다."import/no-restricted-paths": [
"warn", // "error"
{
zones: [
{
from: "node_modules/vue", // 対象の依存パス
target: "./src/(usecases|entities|adapter)", // 禁止するパス(正規表現可)
message: // エラーメッセージ
"フレームワーク非依存な層です。hooks層での実装を検討してください。",
},
{
from: "./src/api/@types",
target: "./src/!(entities)/**/*", // ./src/entities以外のパスでは禁止する
message: "APIの型定義はアプリケーション内でそのまま利用することはできません。",
},
],
},
],
최후
나는 가능한 심사 규칙화를 기계적으로 검측하는 사람이 있으면 생산성이 높아질 것이라고 생각한다.
재미있으신 분들은 다른 원칙도 규칙화할 수 있는지 조사해 보세요!
자신과 관련된 시간표 애플리케이션인'트윈:te'는 기부금만으로 운영되는 완전 무료 학생 서비스다.
MIT 라이선스인 OSS가 공개된 만큼 어떻게든 스타가 돼주세요.
Reference
이 문제에 관하여("이 경로로 이 파일,, 을 가져오지 않으려면"을 규칙화합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/sqer/articles/35d56d9850efb2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)