В Drupal 7 я могу использовать drupal_add_js
в файле template.php темы как theme_preprocess_html(&$vars)
функцию:
drupal_add_js(drupal_get_path('theme', 'mytheme') . '/js/scripts.js',
array(
'group' => JS_THEME,
'preprocess' => TRUE,
'weight' => '999',
));
$vars['scripts'] = drupal_get_js();
В Drupal 8 я попытался преобразовать это, используя attached
в файле моей темы .theme, например:
$vars['#attached']['js'] = array(
array(
'data' => drupal_get_path('theme', 'mytheme') . '/js/scripts.js',
'options' => array(
'group' => JS_THEME,
'preprocess' => TRUE,
'every_page' => TRUE,
),
),
);
... но это не сработало, и не было ошибок в сторожевом таймере / консоли или иным образом.
Согласно странице API D8 для drupal_add_js
:
Устаревший - начиная с Drupal 8.0. Вместо этого используйте ключ #attached в массивах рендеринга.
Там было не намного больше информации, что это, однако. Кажется, что drupal_add_css
также будет использовать этот метод. Я знаю, что для Drupal 8 еще рано, но я надеялся на это прыгнуть.