将mp3文件作为npm软件包的一部分提供

时间:2018-11-12 15:06:37

标签: javascript npm webpack mp3 babel-loader

我创建了一个使用mp3文件的NPM程序包,并使用howler.js播放它们。

当我将软件包安装为依赖于另一个项目时,似乎无法播放node_modules文件夹中的文件。

我尝试单独使用 babel webpack babel 文件加载器 url -loader

要求文件的代码

    const filePath = path.join(__dirname, 'dist/public/Media/' + note.instrument + '/' + 'FF_' + notes['b'][notes[note.lang].indexOf(note._note)] + note._octave + '.mp3')
    sounds.set(key, new Howl({
        src: [filePath]
    }))

webpack.config.js

const path = require('path')

module.exports = {
  entry: './src/index.js',
  mode: 'development',
  output: {
    filename: 'bundle.js',
    path: path.resolve(__dirname, 'dist')
  }
}

错误

  

在以下位置访问XMLHttpRequest   源为'null'的'file:///dist/public/Media/Piano/FF_C1.mp3'具有   已被CORS政策禁止:仅支持跨来源请求   用于协议方案

如何捆绑和解析静态资产以供其他项目使用?

1 个答案:

答案 0 :(得分:0)

万一有人想知道,我最终通过创建一个为文件提供服务的Rest API并在需要时提取它们来解决了这个问题。