2017-10-10 157 views
1

我在客戶端使用Thymeleaf 3.0.8和Spring MVC 4一起使用React,Babel和Webpack。我想是有Thymeleaf解析我最後的大.js文件,並把一些服務器端變量內,這裏用這個例子中起到Web瀏覽器:Thymeleaf JavaScript解析器在雙方括號中破解

https://github.com/jmiguelsamper/thymeleaf3-template-modes-example

不過,我在瀏覽器中得到這個錯誤控制檯: 無法加載資源:淨:: ERR_INCOMPLETE_CHUNKED_ENCODING

經檢查thymeleaf扔parseExpression此功能(不是我的代碼):

function removeFormattingTokens(input) { 
    if (input.match(/\[[\s\S]/)) { //error here 
     return input.replace(/^\[|\]$/g, ''); 
    } 
    return input.replace(/\\/g, ''); 
} 

由於機智^ h thymeleaf您可以使用雙括號插入服務器端變量這樣

window.myVar = [[${var}]]; 

到你的JavaScript我猜這是何等的混亂解析器。這是一個錯誤還是有意的行爲?爲了克服這個問題,可以做些什麼?

我知道我可以使用th:inline並設置一些像這樣的變量,但我真的想避免這種情況。

回答

0

由於我還不能評論。是不是var code = /*[[${code}]]*/;