Angular-google-maps: Как изменить размер значка?

Созданный на 18 июл. 2016  ·  19Комментарии  ·  Источник: SebastianM/angular-google-maps

Описание проблемы
Я хочу изменить размер значка до некоторого предопределенного размера. Как мне это сделать?

Шаги по воспроизведению и минимальная демонстрация проблемы
Текущее поведение
Варианта масштабированного размера нет.

Ожидаемое / желаемое поведение
Я хочу иметь возможность изменять размер значка.

версия angular2 и angular2-google-maps
последний

Другая информация

AgmMarker stale feature-request

Самый полезный комментарий

Я могу использовать объект Icon против свойства iconUrl маркера.

Моя иконка выглядит так:

{
      url: require('../images/vehicle-active.png'), // gives a data://<value>
      scaledSize: {
        height: 40,
        width: 40
      }
}

А затем привязываю это к [iconUrl] . Переменная 'iconUrl' может иметь неправильное имя, но если вы посмотрите на источник, она просто передается свойству 'icon' для gmaps.

Все 19 Комментарий

Я пытаюсь сделать то же самое, но, глядя на источники, нет возможности сделать это, единственный способ назначить значок - через URL-адрес, вы не можете использовать объект google.maps.Icon. Я думал об изменении кода и создании для него запроса на перенос.

@SebastianM Я написал код для обработки google.maps.Symbol и google.maps.Icon для свойства значка маркера, отправлю его на свою вилку, чтобы вы могли взглянуть на него

Я согласен, что мы должны поддерживать как строковые объекты, так и объекты Icon, и переименовать свойство в icon.
icon?: string|Icon;

Я сломал 4 модульных теста, но у меня в вилке есть обновление значка. Я также добавил в файл google-maps-types.ts.

@cdarken Я только что видел ваш пиар и не буду

@ rc3media Я пытался сохранить обратную совместимость, поэтому добавил на маркер аксессуар 'icon'

Когда будет добавлена ​​эта функция? этот выпуск от августа X_X

Я могу использовать объект Icon против свойства iconUrl маркера.

Моя иконка выглядит так:

{
      url: require('../images/vehicle-active.png'), // gives a data://<value>
      scaledSize: {
        height: 40,
        width: 40
      }
}

А затем привязываю это к [iconUrl] . Переменная 'iconUrl' может иметь неправильное имя, но если вы посмотрите на источник, она просто передается свойству 'icon' для gmaps.

@bradseefeld, где вы размещаете код, определяющий значок: в вашем машинописном компоненте? У меня ошибка. Не могу найти имя "требуется" .

Мы используем webpack для обработки и упаковки нашего приложения. Он обрабатывает требуемые вызовы. Я не думаю, что это решение сработает, если вы не используете webpack или что-то подобное.

Да, я использую webpack. Работает, но пришлось добавить:
declare function require(path: string);

Требовать не нужно (по крайней мере, с Ionic)

{
      url: 'assets/img/marker-me.png',
      scaledSize: {
        height: 40,
        width: 40
      }
}

@ sebrojas14 это больше не работает в последних версиях 1.0.0.x.
Теперь действительно требуется "Строка", если она не предусмотрена, выдает ошибку.

У вас есть идеи, когда эта столь востребованная функция будет доступна?

Спасибо

@pdanysz у меня отлично работает, версия 1.0.0-beta.3

@grreeenn Я уже установил эту версию, и она выдает мне ошибку, вот как я спрашиваю :)

Можете поделиться своим кодом ... может я что-то не так делаю :)

Спасибо

@pdanysz Мы потеряли наши волшебные палочки и не можем видеть вашу ошибку отсюда. Было бы очень полезно, если бы вы могли поделиться ошибкой, чтобы мы знали, с чем вы на самом деле имеете дело. Также нам понадобится ваш код, чтобы узнать, как исправить ошибку. Другими словами, чтобы помочь вам, нам нужно полное воспроизведение, чтобы мы могли изучить проблему. Не могли бы вы дать нам это?

Я пробовал использовать этот объект:

icon = {
        url: '/assets/images/img.png', 
        scaledSize: {
          height: 40,
          width: 20
        }
      };

и это работает для меня.
Хотя предполагается, что маркер будет использоваться для нескольких заведений на моей карте, и я не могу использовать одно свойство в моем классе ts, чтобы все работало так, как задумано. Итак, вместо использования [iconUrl] = "icon" в моем html я пытаюсь использовать [iconUrl] = "getIcon (inventory)", который вернет вышеописанный объект с разными URL-адресами для каждого учреждения. Это приводит к зависанию приложения при попытке загрузить agm-карту. Достаточно ли того, что я здесь написал, чтобы понять, возможно ли это? При необходимости я могу выслать более подробную информацию.
Спасибо!

Нашел этот комментарий hrdkisback в StackOverflow, который позволяет динамически изменять значок маркера карты и указывать размер:

[iconUrl]='{"url": marker,"scaledSize": {"height": 10, "width": 10}}'

https://stackoverflow.com/questions/50812678/add-user-image-to-agm-marker-in-angular-5#comment88677807_50812678

Эта проблема была автоматически помечена как устаревшая, поскольку в последнее время не было активности. Он будет закрыт, если больше не будет активности. Спасибо за ваш вклад.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги