Tôi đang cố gắng sử dụng một biến mùa xuân trong javascript:Sử dụng biến mùa xuân trong javascript
Map<String, List<String>> states;
và tôi thấy một số thông tin here
vì vậy tôi cố gắng:
<script th:inline="javascript">
/*<![CDATA[*/
var xxx = ${states};
console.log(xxx);
/*]]>*/
</script>
Trong tôi tab nguồn của trình duyệt Tôi có một cái gì đó như:
var xxx = {STATE1=[a, b, c, d]};
console.log(xxx);
và lỗi là: Uncaught SyntaxError: Invalid shorthand property initializer
.
Tôi cũng đã thử với: var xxx = /*[[${states}]]*/ 'foo';
và nếu tôi in console.log(xxx)
, tôi nhận được 'foo'
.
bạn đã cố gắng gói 'cái xxx' giá trị biến với dấu ngoặc kép để làm cho nó một chuỗi? chỉ để kiểm tra! –
Nó đang làm việc với '''' nhưng vấn đề là bằng cách này tôi không có đối tượng (hashmap) nhưng String vì vậy tôi không thể làm một cái gì đó như 'xxx ['STATE1']' – NikNik
Nó trông giống như bản đồ của bạn được sắp xếp theo một cách kỳ lạ. Theo [doc] (http://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#advanced-inlined-evaluation-and-javascript-serialization) thymeleaf nên viết Bản đồ chính xác. Bạn có thư viện Jackson trong classpath của bạn? –