首页 > 解决方案 > MP4 文件未在 React / Rails 应用程序上加载

问题描述

我收到这个错误。据我所知,它需要配置 webpack 文件,但在这个 rails 应用程序中,它是一个 webpacker.yml 文件。使用通常的标签时,CRA 看起来工作正常。任何帮助,将不胜感激。

./app/javascript/components/User/cover.mp4 1:0 Module parse failed: Unexpected character '' (1:0) 您可能需要适当的加载程序来处理此文件类型,目前没有配置加载程序来处理此文件. 请参阅https://webpack.js.org/concepts#loaders(此二进制文件省略了源代码)

  "dependencies": {
"@babel/preset-react": "^7.10.4",
"@rails/actioncable": "^6.0.0-alpha",
"@rails/activestorage": "^6.0.0-alpha",
"@rails/ujs": "^6.0.0-alpha",
"@rails/webpacker": "4.2.2",
"animate.css": "^4.1.0",
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
"bootstrap": "^4.5.0",
"jquery": "^3.5.1",
"popper.js": "^1.16.1",
"prop-types": "^15.7.2",
"react": "^16.13.1",
"react-animate-on-scroll": "^2.1.5",
"react-animations": "^1.0.0",
"react-bootstrap-sweetalert": "^5.1.15",
"react-dom": "^16.13.1",
"react-ga": "^3.1.2",
"react-router-dom": "^5.2.0",
"react-scroll": "^1.8.0",
"styled-components": "^5.1.1",
"turbolinks": "^5.2.0"

},“版本”:“0.1.0”,“devDependencies”:{“webpack-dev-server”:“^3.11.0”}

标签: ruby-on-railsreactjswebpackvideomp4

解决方案


在下添加config/webpacker.yml_static_assets_extensions.mp4

static_assets_extensions
  - .mp4
  ...

新建一个文件夹app/javascripts/static

然后

const file = require('static/file.mp4')

render() {
  return (
    <div>
      <video controls>
        <source src={file} />
      </video>
  ...

注意:您应该使用 CDN 传送视频


推荐阅读