Ссылка на актив в javascript

Руководство по Ember CLI описывает, как можно ссылаться на ресурсы в шаблонах и CSS, но Каков правильный способ ссылки на актив (скажем, изображение) из моего кода javascript?

В частности, я обеспокоен тем, что путь к ассетам правильно получает отпечатки пальцев при создании ассетов для производства. Кажется, что ember-cli использует для этого broccoli-asset-rev, но согласно его документации, будут сняты отпечатки только <script> тегов в HTML и url() в CSS. Есть ли способ (возможно, через другой плагин брокколи) также получить пути к ресурсам в файлах .js?


person chopper    schedule 17.02.2015    source источник
comment
Из любопытства, каков ваш вариант использования? Что ты пытаешься сделать?   -  person Patsy Issa    schedule 17.02.2015
comment
В этом случае я использую плагин Google Maps API, которому передается путь к изображению для отображения на карте. Возможно, я смогу обойти это с помощью CSS, но мне также просто любопытно, как это будет работать.   -  person chopper    schedule 17.02.2015
comment
Разве вы не передадите это значение пути компоненту в своем шаблоне? Или вы говорите, что это значение будет другим и его нужно будет передавать программно?   -  person yuяi    schedule 18.02.2015
comment
Да, программно   -  person chopper    schedule 18.02.2015


Ответы (2)


Я поместил изображение с именем car.jpeg под public/assets/images, а затем смог сослаться на него в своем файле маршрута application.js как assets/images/car.jpeg.

введите здесь описание изображения

Прекрасно работает

введите здесь описание изображения

ОБНОВЛЕНИЕ

Одна картинка стоит тысячи слов... :)

введите здесь описание изображения

person Kalman    schedule 18.02.2015
comment
Да, это работает в разработке, но я не думаю, что при компиляции путь к ресурсу будет корректно снят, не так ли? - person chopper; 18.02.2015
comment
Есть только один способ узнать :) - person Kalman; 18.02.2015
comment
Да, но что, если на изображении также есть отпечатки пальцев? В этом случае путь ресурса в файле JavaScript не будет обновляться. - person chopper; 19.02.2015
comment
Истинный. На тот момент довольно интересно, как почти все остальное отпечатывается... :) - person Kalman; 19.02.2015
comment
Я думаю, это связано с настройками ember-cli по умолчанию. Если вы явно включаете файлы изображений в Brocfile (согласно документации broccoli-asset-rev), снятие отпечатков пальцев работает должным образом. - person chopper; 19.02.2015

Я нашел проблему. Это работает из коробки, как и ожидалось - оказалось, что мой актив (изображение) не находится в правильном месте, поэтому вхождения его пути в файлах JS никогда не заменялись версией с отпечатком.

person chopper    schedule 03.03.2015