Как использовать подстановочные знаки в (Webpack) devServer publicPath с использованием Vue.js (точнее, Quasar)? - PullRequest
0 голосов
/ 25 октября 2019

Приложение My Quasar (Vue.js) должно быть доступно по этому URL:

http://acme.com/apps/customer/A_UUID/#

Моя проблема в том, что при использовании сервера dev я не могу правильно установить publicPath, потому что яневозможно использовать подстановочный знак в publicPath для A_UUID.

Когда я использую эту конфигурацию

devServer: {
  // https: true,
  // port: 8080,
  compress: true,
  public: 'localhost:8080',
  publicPath: '/apps/customer/'
}

вызов вышеупомянутого URL возвращает страницу ошибки:

НевозможноGET / apps / customer / 6ea40a8f-8fe8-4756-b79d-34082c4b662d /

Для этого приложения необходимо, чтобы UUID был частью URL. Приложение должно иметь возможность обрабатывать все запросы, начиная с / apps / customer /

Но я не могу правильно настроить publicPath. При использовании этой конфигурации

devServer: {
  // https: true,
  // port: 8080,
  compress: true,
  public: 'localhost:8080',
  publicPath: '/apps/customer/*'
}

вызывает ту же ошибку. Только когда я удаляю publicPath из конфигурации, я могу получить доступ к вышеупомянутому URL

devServer: {
  // https: true,
  // port: 8080,
  compress: true,
  public: 'localhost:8080'
}

К сожалению, это вызывает проблему статической загрузки ресурса. Я просто вижу белую страницу, потому что все ресурсы теперь выбираются из http://acme.com/apps/customer/6ea40a8f-8fe8-4756-b79d-34082c4b662d/style.css, а не http://acme.com/apps/customer/style.css

Мне нужно настроить публичный путь (для ресурсов, включая app.js), но также иметь возможностьполучать запросы, начинающиеся с /apps/customer/ и содержащие UUID.

...