내가 지금 시험
이RequireJs에서 최적화 프로그램에 해시 출력 파일 이름을 생성하도록 지시하려면 어떻게해야합니까?
sudo /usr/local/bin/node /tmp/r.j/r.js -o name=main out=test.js baseUrl=.
같은 최적화 프로그램을 실행, 내가 콘텐츠의 해시로 출력 최적화를 파일 이름을 어떻게 알 수 있습니까 (분명 최대 만료 설정) 다음에 종속성의 이름을 변경 관련 전화가 필요합니까?
예제 상황은 내가 하나의 마스터 파일에 모두 필요로 전화를 넣어 계획입니다 Miller Medeiros’s suggestion을 바탕으로이
require({
baseUrl: '{{ STATIC_URL }}js',
paths: {
jquery: 'https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min',
jqueryui: 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.12/jquery-ui.min'
}
}, ['order!jquery','order!jqueryui','order!main']);
requirejs이 13KUJAW78M.js
같은 것을 잡아 당겨해야같은 것입니다. 이것은 또한 모든 호출이 또한 최적화 될 필요가 있음을 의미합니다.
예컨대
switch(document.location.pathName){
case '/foo':
require(['sections/foo/main']);
break;
case '/foo/bar':
require(['sections/foo/main', 'core/bar']);
break;
default:
require('sections/home');
}
요구 ([ '부/foo에/메인']);
은 해시 파일에 맞게 최적화되어야합니다.
누군가 도움을 줄 수 있습니까?
옵티마이 저가 해시를 추가합니까, 아니면 파일 이름을 바꾸기 위해 일부 스크립트 + 정규식 마술을해야합니까? –
기본 또한 다른 파일들과 함께 압축 될 수도 있고 별도로 존재해야 할 수도 있습니다. –
RequireJS optimizer는 해시를 추가하지 않을 것입니다. 수동으로 생성하거나 (또는 내가 모르는 일부 도구를 사용하여) 경로 설정을 전달해야합니다. 모듈에 "core/bar"가 필요할 때 대신 "core/bar.HASH_VALUE.js"파일을로드합니다. 설정에 따라 많은 파일에 해시를 생성 할 필요가 없습니다. main은 다른 파일과 함께 압축 될 수 있습니다. –