Ниже приводится ошибка в вопросе, когда я проверяю console.log, и он прерывает его
var map = L.map('map').setView([0, 0], 2); <?php $classesForCountries = []; if (have_posts()) : while (have_posts()) : the_post(); $classesForCountries[ get_field('country') ] += get_field('year') + ' '; endwhile; endif; ?> // Now this should look something like {"Australia": "2006 2010 "} var classNameMap = <?php echo JSON_encode($classesForCountries); ?>; geojson = L.geoJson(statesData, { style: function(feature) { // Here is where we got the issue var classes = classNameMap[feature.properties.sovereignt]; if (classes) { return {className: classes}; } }, }).addTo(map);
ОБНОВИТЬ
посмотрев на console.log, он указывает мне на строку в библиотеке:
...t.replace(/^\s+|\s+$/g,"")},splitWords:function(t){return o.Util.trim(t).split(/\s+/)}...
«@ Fred-i-lol превосходно. Большое спасибо. Положите это в ответ, и я его приму. – rob.m»
Согласно запросу OP:
Это += get_field('year') + ' '
Возможно, вы пришли с фона JS / C и считаете, что знаки +
могут использоваться для конкатенации в PHP. PHP интерпретирует знаки плюса, думая, что вы хотите делать математику.
Это точки, которые объединяются в PHP:
.= get_field('year') . ' '