Vue中添加mp3音频文件

2019-02-27  本文已影响0人  _情绪疯子

有的时候我们需要在vue中添加音频文件,但是直接将音频文件放置了assets目录下的时候,会发现并不能正常播放,下面是两种常用的配置方法:

方法一、将音频文件放置在static目录中,然后进行调用,如下所示

<audio class="success" 
       src="/static/audios/do_wrong.mp3">
</audio>

以上这种方式就能够解决这个问题了。

方法二、给项目配置mp3格式的解析器
1、在webpack.base.conf.js中添加加载器,如下

{
     test: /\.(mp3)(\?.*)?$/,
     loader: 'url-loader',
     options: {
       name: utils.assetsPath('assets/[name].[hash:7].[ext]')
     }
}

2、在vue-loader.conf.js文件为audio的src属性添加转换属性选项,让 vue-loader 知道需要将 audio 的 src 属性的内容转换为模块。

var utils = require('./utils')
var config = require('../config')
var isProduction = process.env.NODE_ENV === 'production'

module.exports = {
  loaders: utils.cssLoaders({
    sourceMap: isProduction
      ? config.build.productionSourceMap
      : config.dev.cssSourceMap,
    extract: isProduction
  }),
  transformToRequire: {
    "audio": "src"
  }
}

3、添加audio标签,引入资源文件

<audio autoplay="autoplay" 
       controls="controls"
       preload="auto"
       src="../assets/allright.mp3">
</audio>

此时的资源文件放置在assets目录下即可。
4、重新启动项目或者打包发布,即可听到声音。

更多细节可以参考:
https://zhuanlan.zhihu.com/p/26038486?refer=think-in-vue

上一篇 下一篇

猜你喜欢

热点阅读