0
최근에 jj와 css를 자동으로 연결하고 축소하고 변경할 때 캐시를 새로 고치는 프로젝트에서 장고 압축기를 사용하기로 결정했습니다.압축시 JavaScript 문자열 연결이 끊어집니다.
내가 겪고있는 문제는 압축되지 않았을 때 작동하지만 압축기를 통과 한 후에 작동하는 스크립트가 있다는 것입니다. 문자열 연결로 가능성을 좁힐 수있었습니다. HTML 문자열 연결 특히. 예를 들어
:
boldTerm = '<b>' + terms[i] + '</b>';
term = new RegExp(term, 'g');
data = data.replace(term, boldTerm);
중단 할 때 압축. 나는 구문 오류 얻을 :
SyntaxError: missing ; before statement
을하지만이 작동합니다
boldTerm = 'TEST';
term = new RegExp(term, 'g');
data = data.replace(term, boldTerm);
누군가는 설명 할 수 :
- 그것을 나누기 이유는 무엇입니까?
- 압축 할 때 어떻게 작동합니까?
감사
EDIT : 여기서 오류가 발생되는 압축 된 코드의 일부분이다
(jQuery);';term=new RegExp(term,'g');data=data.replace(term,boldTerm);}}
그것은 정규식에 'g'(기간에 발생되는중인 이제, g)
나는이 작품을 발견 하였다 :
boldTerm = '<' + 'b' + '>' + terms[i] + '<' + '/b' + '>';
term = new RegExp(term, 'g');
data = data.replace(term, boldTerm);
이렇게하면 문제가 해결됩니다. 그러나 '왜'라는 질문은 여전히 남아 있습니다. 플레이
것들 :
- jQuery를
- 콧수염
- 장고 압축기 (에서 JSMin)
1. 왜 '용어'변수를 덮어 쓰 시나요? 2. 압축 할 때 코드의 일부분은 어떻게 보이나요? – metadings
어떤 위치에서 오류가 발생합니까? –
1. 나는 특별한 이유가 없다. 당신이 그것에 대해 물었 기 때문에 나는 그렇게하지 말아야한다고 생각합니다. 2. 압축 된 코드 생성 오류의 스 니펫은 위의 편집을 참조하십시오. –