그래서, 저는 프로젝트에서 꿀꺽 꿀꺽 마시고 있습니다.꿀꺽 거리는 소리, 나침반, 라이브 다시로드 및 부분 재로드
자산을 컴파일하는 데 gulp-compass를 사용합니다.
그리고 내가 가지고있는 작업 중 하나는 dev에 대한 감시 작업입니다.
gulp.task('live', function() {
gulp.watch('path/to/my/scss/files', function(event) {
console.log('Event type: ' + event.type);
console.log('Event path: ' + event.path);
compass(event.path);
});
});
나침반 기능 :이 같은
function compass(source) {
return gulp.src(source)
.pipe(
plugins.compass({
config_file: 'config.rb',
css: 'path/to/my/css/files',
sass: 'path/to/my/scss/files'
}).on('error', errorHandler)
)
.pipe(gulp.dest('../web/css'))
.pipe(plugins.livereload());
}
참고 : ErrorHandler를 함수 내 질문에 무관하다.
내가 이런 식으로 파일을 보는 이유는 꿀꺽 깬 나침반이 모든 파일을 컴파일하지 않고 변경된 파일 (dev에이 파일을 사용하므로 한 파일에서 작업 할 예정)을 만들기 위해서입니다. 이 방법은 새로 고침이 빠르며 기다릴 필요가 없습니다 (일반적으로 모든 scss를 컴파일하는 데 30 ~ 60 초 정도 소요될 수 있습니다). 꿀꺽 마심 - 나침반은 컴파일 만 수행하고 시계는 수행하지 않습니다.
일부 파일이 아닌 경우 (예 : home.scss) 완벽하게 작동합니다.
하지만 부분적으로 변경하면 주 스커트에 포함되는데 문제가 발생합니다. 즉, 부분적으로 컴파일되고 새로 고침되지 않습니다. 말이되지 않는다).
이렇게하려면 부모 scss 파일에서 더미 수정을해야하며 정상적으로 작동합니다.
나는 이것이 내 taks (오직 하나의 파일을 나침반에 보내라.)를 정의하는 방법 때문이라고 알고있다. 또한 꿀꺽 꿀꺽 거리는 음악 때문에 항상 "컴파일"을 수행한다.
이 gulp-plugin (지금까지)은 watch 명령을 가지고 있지 않습니다. (패치하지 않으면하고 싶지 않습니다.)
누군가이 상황을 해결하는 방법을 알고 있으며 내가 부분적으로 무언가를 바꿀 때 "이 부분은 특정 부모에게 속해 있다는 것을 알고 있습니다.
지금까지 부모에서 더미 수정을 수행하거나 부모 scss Im에서 작업하는 것을 볼 수는 있지만 자동으로 수행하는 것이 좋습니다.
나는 한 가지 해결책이 부분의 모든 부모 (지도를 직접 읽음)와지도를 만들 수 있으며, 부분이 수정되는 경우 모든 부모와 새로 고침을 업데이트하지만 아마도 너무 비싸다고 생각합니다. 어쩌면 이것은 일종의 "예열"일 수 있습니다 ...
누군가 같은 문제가 있습니까? 부분 및 시계/라이브 재로드 환경에서 어떻게 작업합니까?
이 모든 목표는 코드를 작성하고 브라우저를 업데이트하는 것이므로 실시간으로 볼 수 있으며 브라우저 간 문제 (일부 브라우저는 동시에 열리고 동적으로 새로 고침)가 발생하지 않습니다.
의견이나 도움을 주시면 감사하겠습니다.
과도하게 최적화하지는 못했지만이 플러그인을 사용하면 몇 가지 해결책을 찾을 수 있을지 잘 모르겠습니다. https://www.npmjs.org/package/gulp-tap 콘텐츠를 분석하고 캐시 할 수 있다고 생각합니다. 그런 다음지도를 확인하여 파일을 필터링하십시오. watch + livereload를 사용하는 나의 방식 때문에 이전 프로젝트의 나의 요지를 살펴볼 수 있습니다 : https://gist.github.com/Namek/a81c1bcc2a73183d0c5f – Namek