2015-10-22 6 views
0

Обычно библиотека графики Google загружается следующим образом, который работает отлично:Как загрузить диаграммы Google с помощью замороженной библиотеки?

google.load('visualization', '1', {packages: ['corechart']}); 

var data = new google.visualization.arrayToDataTable(v); 
var chart = new google.visualization.LineChart(elm[0]); 
chart.draw(data, options); 

Теперь я хочу перейти к замороженному версии corecharts. Документы утверждают, что это должно быть сделано следующим образом:

google.charts.load('41', {packages: ['corechart']}); 

@see https://developers.google.com/chart/interactive/docs/library_loading_enhancements

Проблема: Используя это, я получаю сообщение об ошибке в JavaScript, что google.visualization не определена.

Итак, как мне загрузить замороженную версию?

ответ

0

Вы поменяли источник сценария сценария?

<script type="text/javascript" 
    src="https://www.google.com/jsapi"></script> 

в

<script type="text/javascript" 
    src="https://www.gstatic.com/charts/loader.js"></script> 
+0

Да, я изменил его. – membersound

1

Вопрос не нагрузка, вопрос в тот момент, когда вы получаете доступ google.visualization.

В документации указано, что вы должны предоставить обратный вызов для google.charts.setOnLoadCallback, где вы создаете диаграмму, но вы этого не делаете.

Как кажется, скрипты будут загружаться синхронно (через document.write) при загрузке библиотеки нормально, но при загрузке замороженной версии скрипты будут загружены асинхронно (через appendChild), поэтому вашу попытку терпит неудачу (сценарии не были полностью загружены при попытке доступа google.visualization)