Прогрессивное веб-приложение на основе Angular 6 - индивидуальные иконки - PullRequest
0 голосов
/ 05 ноября 2018

Я занимаюсь разработкой веб-приложения Progressive на основе Angular6. Это приложение может использоваться несколькими клиентами, и в зависимости от клиента мне понадобится другой набор значков.

Это требует от меня динамической генерации файла manifest.json. Кто-нибудь делал что-нибудь подобное? Что было бы правильным местом для этого? main.ts? Вот аналогичная реализация (http://technowhisp.com/2018/05/05/pwa/dynamic-pwa-manifest/), но не в среде Angular.

Теперь мы можем сгенерировать manifest.json - однако, я думаю, значки всех клиентов должны быть физически представлены в проекте (скажем, в папке активов). Это правильно? Есть ли возможность динамически загружать эти значки с удаленного (графического) сервера?

Заранее спасибо Sushil

1 Ответ

0 голосов
/ 06 ноября 2018

Если вы знаете URL-адрес изображения этих значков, вы можете попробовать использовать Node Image Downloader . Учитывая URL, он может загрузить изображение по указанному вами пути.

npm install --save image-downloader

Использование с обещанием:

const download = require('image-downloader')

// Download to a directory and save with the original filename
const options = {
  url: 'http://someurl.com/image.jpg',
  dest: '/path/to/dest'                  // Save to /path/to/dest/image.jpg
}

download.image(options)
  .then(({ filename, image }) => {
    console.log('File saved to', filename)
  })
  .catch((err) => {
    console.error(err)
  })

// Download to a directory and save with an another filename
options = {
  url: 'http://someurl.com/image2.jpg',
  dest: '/path/to/dest/photo.jpg'        // Save to /path/to/dest/photo.jpg
}

download.image(options)
  .then(({ filename, image }) => {
    console.log('File saved to', filename)
  })
  .catch((err) => {
    console.error(err)
  })
...