Вы здесь

Как прописывать путь до картинки в js файлах темы?

0

Добрый день!
есть у яндекса опция сделать свою точку на карте - https://tech.yandex.ru/maps/jsbox/2.0/placemark
я нарисовал точку и пытаюсь вставить её на карту - iconImageHref: '/img/myIcon.png',
и ничего не происходит... я пишсал и абсолютный путь, и относительный. но, моя точка не отображается.
в примерах все получается (если скачать пару файлов и тестить на локалке).

Подскажите пожалуйста, уважаемые знатоки... ?

карту подключаю библиотекой
map:
version: 1.x
js:
https://api-maps.yandex.ru/2.1/?lang=ru_RU: {type: external}
dist/js/ymap.js: {}
dependencies:
- core/jquery
- core/jquery.once

на страницу подключаю так. {{ attach_library('theme/map') }}

Версия Drupal: 
8.x
Вопрос задан 08.04.2018 - 00:04

Весь код скрипта выложи. Думаю, друпал тут не при чём.

Комментарий оставлен 09.04.2018 - 15:42

(function ($) {
'use strict';
Drupal.behaviors.ymap = {
attach: function (context, settings) {
ymaps.ready(init);
var yMap;
var Place;
function init () {
yMap = new ymaps.Map('first_map', {
center: [57.77419700432003, 40.94545687235261],
zoom: 15,
controls: ['smallMapDefaultSet']
},
{
searchControlProvider: 'yandex#search'
});
Place = new ymaps.Placemark([57.774233, 40.945483],
{
balloonContent: 'бла бла'
},
// {
// iconImageHref: 'icon-logo.png',
// iconImageSize: [50, 50],
// iconImageOffset: [0, 0]
// }
// вот это не работает ((
{
preset: 'islands#redSportIcon',
iconColor: '#F2A921'
}
);
yMap.geoObjects.add(Place);
yMap.behaviors.disable(['scrollZoom']);
document.getElementById('destroyButton').onclick = function () {
yMap.destroy();
};
}
}
};
})(jQuery);

Комментарий оставлен 09.04.2018 - 20:47

А в консоли что пишет? Так попробуй, у себя не тестил:

(function ($, Drupal) {
  'use strict';
  Drupal.behaviors.ymap = {
    attach: function (context, settings) {
      ymaps.ready(init);
      var yMap;
      var Place;
      function init () {
        yMap = new ymaps.Map('first_map', {
            center: [57.77419700432003, 40.94545687235261],
            zoom: 15,
            controls: ['smallMapDefaultSet']
          },
          {
            searchControlProvider: 'yandex#search'
          });
        Place = new ymaps.Placemark([57.774233, 40.945483],
          {
            balloonContent: 'бла бла'
          },
          {
            iconImageHref: 'icon-logo.png', //тут путь правильный только прописать нужно
            iconImageSize: [50, 50],
            iconImageOffset: [0, 0]
          }
        );
        yMap.geoObjects.add(Place);
        yMap.behaviors.disable(['scrollZoom']);
        document.getElementById('destroyButton').onclick = function () {
          yMap.destroy();
        };
      }
    }
  };
})(jQuery, Drupal);
Комментарий оставлен 12.04.2018 - 11:43

так ничего не изменилось)) Вы лишь убрали существующую метку. конечно я убираю комменты и добавляю в правильные места, когда тестирую. скинул просто рабочий вариант...
а как прописать путь до своей иконки - так и не узнал((
и яндекс в консоли ничего не пишет( кроме этого:

Uncaught TypeError: Cannot set property 'onclick' of null
    at init (ymap.es6.js:38)
    at Array.<anonymous> (?lang=ru_RU:2)
    at r (?lang=ru_RU:2)
    at a (?lang=ru_RU:2)

но, это относится к этой функции:

        document.getElementById('destroyButton').onclick = function () {
            yMap.destroy();
        };
Комментарий оставлен 6 дней назад

Ответы