Обновление графических ресурсов в режиме разработки ParcelJS - PullRequest
0 голосов
/ 06 июня 2019

Я работаю над приложением NodeJS, используя сервер разработки ParcelJS. Приложение использует OpenLayers вместе с OSRM для обеспечения маршрутизации между определенными пользователем точками на карте. Эти точки обозначены значками маркеров, которые загружаются путем импорта их с диска в файл js. В настоящее время я работаю над стилизацией значков и хотел бы видеть обновленное изображение при перезагрузке страницы. Однако, хотя ParcelJS обновляет любые скриптовые файлы при их изменении, ресурсы изображений не обновляются, пока я не перезапущу сервер посылок.

Есть ли способ заставить сервер разработки ParcelJS также обновлять ресурсы изображений при изменении?

Вопрос не основан конкретно на моем коде, но для полноты, мой основной код выглядит следующим образом:

import markerpng from './images/marker.png';

// I'm saving markers to later change/delete them
var markers = new Array();

// One layer containing all the markers. It's initialized with zero features
var marker_layer = new VectorLayer({
    map: map,
    source: new VectorSource({
        features: []
    })
});

// Add a marker to the vector layer, at the given lat/lon coordinates. 
// The marker icon is given by the filename
function addMarker(coordinates, filename) {
    markers[markers.length] = new Feature({
        geometry: new Point(coordinates);
    });
    markers[markers.length-1].setStyle(new Style({
        image: new Icon({
            src: filename,
            anchor: [0.5, 1] // To set the bottom-center as anchorpoint
        });
    }));
    marker_layer.getSource().addFeature(markers[markers.length-1]);
}

// Add one marker
addMarker([52.2, 6.8], markerpng);

Изображение импортируется, чтобы получить относительный URL-адрес в среде разработки (где файлы обслуживаются временными именами, отличными от имени на диске), который затем можно использовать где угодно. Сам код работает нормально.

Мой package.json выглядит так

{
  "name": "maps",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "parcel index.html",
    "build": "parcel build --public-url . index.html"
  },
  "dependencies": {
    "images": "^3.0.2",
    "ol": "^5.3.3"
  }
}

и я запускаю сервер разработки с

yarn run start

Я не знаю, есть ли у ParcelJS возможность оперативного обновления для ресурсов изображений, и я не могу найти что-либо об этом в их документации или где-либо еще, поэтому отсюда вопрос:)

Заранее большое спасибо за любую помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...