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); 

누군가는 설명 할 수 :

  1. 그것을 나누기 이유는 무엇입니까?
  2. 압축 할 때 어떻게 작동합니까?

감사

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

1. 왜 '용어'변수를 덮어 쓰 시나요? 2. 압축 할 때 코드의 일부분은 어떻게 보이나요? – metadings

+0

어떤 위치에서 오류가 발생합니까? –

+0

1. 나는 특별한 이유가 없다. 당신이 그것에 대해 물었 기 때문에 나는 그렇게하지 말아야한다고 생각합니다. 2. 압축 된 코드 생성 오류의 스 니펫은 위의 편집을 참조하십시오. –

답변

0

어쩌면 당신은 정규식을 수출하지 않는 압축기가 이름을 변경한다.