Webpack 및 NPM 스크립트는 최신 JavaScript 개발, 작업 처리 및 번들링을 지배합니다. 그러나 많은 프로젝트는 여전히 Grunt에 의존합니다. 블록의 최신 아이는 아니지만 Grunt는 여전히 신뢰할 수있는 작업장으로 남아 있습니다. 이 기사에서는 기존 Grunt 프로젝트를 간소화하고 개선하는 전략을 살펴 봅니다.
jit-grunt
로로드하는 과급 작업
grunt.loadNpmTasks
사용하여 각 grunt 작업을 수동으로로드하는 것은 지루합니다. load-grunt-tasks
자동화를 제공하지만 jit-grunt
더 빠른 성능을 제공하며 특히 대규모 프로젝트에 유리합니다.
성능 비교 :
jit-grunt
없이 :
<code>loading tasks 5.7s ▇▇▇▇▇▇▇▇ 84% assemble:compile 1.1s ▇▇ 16% Total 6.8s</code>
jit-grunt
와 함께 :
<code>loading tasks 111ms ▇ 8% loading assemble 221ms ▇▇ 16% assemble:compile 1.1s ▇▇▇▇▇▇▇▇ 77% Total 1.4s</code>
상당한 속도 개선! jit-grunt
필요에 따라 작업을로드 하여이 최적화를 달성합니다.
jit-grunt
사용 :
- 설치 :
npm install jit-grunt --save
- 작업 로딩 명세서를 대체합니다.
module.exports = function (grunt) { // 개별 grunt 대신 grunt.loadnpmtasks 호출 ... 요구 ( 'jit-grunt') (grunt); grunt.initconfig ({}); }
구성로드 간소화
다음 단계는 GruntFile을 더 작고 관리하기 쉬운 구성 파일로 해체하는 것입니다. monolithic gruntfile.js
대신 구성을 별도의 파일로 구성하십시오. 효율적인 하중을 위해 load-grunt-configs
사용하겠습니다.
load-grunt-configs
사용 :
module.exports = function (grunt) { 요구 ( 'jit-grunt') (grunt); const configs = require ( 'load-grunt-configs') (grunt, { 구성 : {src : 'tasks/*. js'} }); grunt.initconfig (configs); grunt.registertask ( 'default', [ 'cssmin']); }
또는 Grunt는 기본 작업 로딩을 제공합니다 : grunt.loadTasks('tasks')
. 그러나 구성에 이상적이지 않지만 파일을 즉시 실행합니다. 이를 활용하려면 grunt.config
사용하여 외부 파일 자체 내에서 작업을 구성해야합니다.
grunt.loadTasks
사용 예 :
// tasks/mytask.js module.exports = function (grunt) { grunt.config ( 'mytask', { 옵션 : 'value' }); }; // gruntfile.js module.exports = function (grunt) { 요구 ( 'jit-grunt') (grunt); grunt.initconfig ({}); grunt.loadtasks ( '작업'); grunt.registertask ( 'default', [ 'mytask']); };
고급 구성 조직 : 기능 별 그룹화
파일 이름으로 작업을 구성하는 것이 항상 직관적 인 것은 아닙니다. 보다 효과적인 접근 방식은 기능 또는 기능별로 구성하는 것입니다.
수많은 개별 작업 파일 대신 기능 (예 : styles.js
, scripts.js
, images.js
)을 나타내는 파일을 만듭니다. grunt.config.merge
사용하여 관련 작업에 대한 구성을 결합하여 덮어 쓰기를 피하십시오.
예 : 스타일 구성 :
// tasks/styles.js module.exports = function (grunt) { grunt.config ( 'sass', { / * ... * /}); grunt.config ( 'postcss', { / * ... * /}); grunt.config.merge ({ 보다: { 스타일 : { 파일 : [ '소스/스타일/*. scss'], 작업 : [ 'Sass', 'Postcss'] } } }); };
이 접근법은 가독성과 유지 관리를 향상시켜 프로젝트 구조에 대한 명확한 개요를 제공합니다.
결론
최신 기술은 아니지만 Grunt는 적절한 조직에서 실행 가능한 옵션으로 남아 있습니다. jit-grunt
, load-grunt-configs
(또는 신중한 작업 정의가있는 grunt.loadTasks
)와 기능 기반 구성 구조를 활용하면 Grunt 프로젝트의 효율성과 유지 관리를 크게 향상시킬 수 있습니다. 자세한 내용과 가능성은 Grunt 문서에 문의하십시오.
위 내용은 Marie Kondo 조직 치료에 대해 grunt 작업을 제공하자의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

라이브 토크 나 수업 중에 대화식 애니메이션을 표시해야한다면 슬라이드와 상호 작용하기가 항상 쉽지 않다는 것을 알 수 있습니다.

Astro를 사용하면 빌드 중에 대부분의 사이트를 생성 할 수 있지만 Fuse.js와 같은 것을 사용하여 검색 기능을 처리 할 수있는 작은 서버 측 코드가 있습니다. 이 데모에서는 퓨즈를 사용하여 개인 "북마크"세트를 검색합니다.

문서가 저장되는 동안 Google 문서에서 볼 수있는 것과 유사한 프로젝트 중 하나에서 알림 메시지를 구현하고 싶었습니다. 다시 말해, a

몇 달 전에 나는 해커 뉴스를 썼고 (하나와 마찬가지로) IF 문을 사용하지 않는 것에 대한 (현재 삭제 된) 기사를 가로 질러 달렸습니다. 이 아이디어를 처음 접한다면 (나처럼

공상 과학 소설의 초기부터 우리는 우리와 대화하는 기계에 대해 환상을 가지고 있습니다. 오늘은 평범합니다. 그럼에도 불구하고 제작 기술

Gutenberg가 핵심으로 풀려 났을 때를 기억합니다. 왜냐하면 나는 그날 WordCamp에 있었기 때문입니다. 지금은 몇 달이 지났으므로 점점 더 많은 것을 상상합니다.

대부분의 웹 애플리케이션의 배후에있는 아이디어는 데이터베이스에서 데이터를 가져 와서 최상의 방법으로 사용자에게 제시하는 것입니다. 우리가 거기에서 데이터를 다룰 때

#039;는 당신이 의미있는 것처럼 보일 수있는 상황에 대한 약간의 단계를 수행하자. 이것에서


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.
