context: Vue 2 приложение, использующее WebPack, созданное в vue -cli.
Мы загружаем небольшой wav-файл в наше приложение. В настоящее время wav-файл просто помещается в папку public
и загружается через XMLHttpRequest. В основном это работает, но мы получаем достаточное количество отчетов об ошибках сети от наших пользователей, что мы хотели бы сделать это другим способом, не требующим сетевого запроса.
Поскольку файл небольшой, я бы хотел просто вставить его в наше приложение, возможно, с помощью веб-пакета. Хотя я не могу понять синтаксис для этого.
В идеале, я хотел бы сделать следующее:
- поставить "beep.wav" в
assets
папка. - Использование
import beep from "../path/beep.wav"
В результате получается переменная beep
, которая содержит двоичный файл WAV в массиве Uint8Array, все во время компиляции.
Я пробовал разные комбинации вещей, но он постоянно оставляет путь файла в переменной beep
вместо всего двоичного файла. (То есть beep
равно строке assets/sounds/beep.wav
.)
Я не полностью привязан к приведенному выше синтаксису, но в идеале я бы не хотел предварительно обрабатывать и изменять файл WAV, потому что это позже будет сложнее изменить его.
Я пробовал различные комбинации следующих в vue.config.js
:
configureWebpack: {
module: {
rules: [
{
test: /\.wav/,
loader: 'raw-loader',
options: {
esModule: false,
},
}
]
},
Спасибо!