小编Jus*_*ith的帖子

Grunt imagemin错误:无法读取未定义的属性"内容"

当我尝试运行它时,Grunt imagemin会抛出以下错误:

Running "imagemin:dynamic" (imagemin) task
Fatal error: Cannot read property 'contents' of undefined
Run Code Online (Sandbox Code Playgroud)

这是我的package.json文件:

{
  "name": "project1",
  "version": "0.1.0",
  "devDependencies": {
    "grunt": "~0.4.1",
    "grunt-contrib-imagemin": "^1.0.0",
    "grunt-contrib-uglify": "^0.11.0",
    "imagemin" : "4.0.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我的Gruntfile.js

module.exports = function(grunt) {

    grunt.initConfig({

        pkg: grunt.file.readJSON('package.json'),

        uglify: {
          build: {
            src: 'views/js/src/main.js',
            dest: 'views/js/build/main.js'
          }
        },

        imagemin: {
          dynamic: {
            files: [{
              expand: true,
              cwd: 'views/images/src/',
              src: ['**/*.{png,jpg,gif}'],
              dest: 'views/images/build/'
            }]
          }
        }

    });

    // 3. Where we tell Grunt we plan to use this …
Run Code Online (Sandbox Code Playgroud)

javascript gruntjs grunt-contrib-imagemin imagemin

9
推荐指数
3
解决办法
4021
查看次数

Mobile Safari 在播放时跳过 HTML 音频的前几秒()

我有一个 React Audio Player,它使用 useAudio 钩子来管理 HTML5 音频。除了 Mobile Safari 之外,它在任何地方都可以正常工作,在播放器开始播放几秒钟后声音就会开始。

奇怪的是,我canplaythrough在调用HTMLAudioElement.play(). 所以 Safaricanplaythrough启动并开始“播放”音频,除了音频直到一秒钟左右才真正开始。

这是 CodeSandbox 上的完整示例:https ://codesandbox.io/s/useaudioplayer-jvftw ? file =/ src/useAudio.tsx

要复制,请在 Mobile Safari 中打开并播放音频。

javascript mobile-safari html5-audio reactjs

6
推荐指数
1
解决办法
136
查看次数

如何使用 Webpack 通过 React 内联多个 SVG?

假设我想将十几个或更多 SVG 内联到我的 React 应用程序中。现在,我正在使用svg-react-loader像这样导入它们。

import Svg1 from "!babel!svg-react!../../images/sdg1.svg";
import Svg2 from "!babel!svg-react!../../images/sdg2.svg";
import Svg3 from "!babel!svg-react!../../images/sdg3.svg";
import Svg4 from "!babel!svg-react!../../images/sdg4.svg";
Run Code Online (Sandbox Code Playgroud)

...等等。我需要在每个事件上设置事件处理程序和悬停事件。此外,当选择其中之一时,我想更改其不透明度。

经过几个小时和多次失败的实验后,我尝试过的唯一有效的方法是将它们全部渲染在像这样的父组件中。

const Icon = React.createClass({

    //Callback that updates the state of a parent component
    clickHandler() {
        this.props.handler(this.props.svg) 
    }

    render() {

        const icons = [
            <Svg1 className="svg1" opacity={this.props.svg === this.props.currentSvg ? 1 : 0.3} />
            <Svg2 className="svg2" opacity={this.props.svg === this.props.currentSvg ? 1 : 0.3} />
            <Svg3 className="svg3" opacity={this.props.svg === this.props.currentSvg ? 1 : 0.3} />
            <Svg4 className="svg4" …
Run Code Online (Sandbox Code Playgroud)

svg reactjs webpack

5
推荐指数
1
解决办法
1567
查看次数

无法使用Webpack加载font-awesome

尝试使用webpack加载font-awesome会给我这个错误:

ERROR in ./~/font-awesome/fonts/fontawesome-webfont.eot?v=4.6.3
Module parse failed: ...\node_modules\font-awesome\fonts\fontawesome-webfont.eot?v=4.6.3 Unexpected character '?' (1:0)
You may need an appropriate loader to handle this file type.
Run Code Online (Sandbox Code Playgroud)

我试图在这样的React组件中导入font-awesome:

import "font-awesome/scss/font-awesome.scss";
Run Code Online (Sandbox Code Playgroud)

这是我的webpack.config.js的样子.我想将font-awesome和相关资产与其他所有资源分开加载,即因为我已经加载了带有babel的SVG,但是不想用font-awesome来做.

{
    test: /\.scss/,
    loader: ExtractPlugin.extract("style", "css!sass")
},
{
    test: /\.svg$/,
    loader: "babel!svg-react",
    exclude: /node_modules/
},
{
    test: /\.ttf$/,
    loader: "file-loader?mimetype=application/octet-stream&name=[name].[ext]",
    exclude: /node_modules/
},
{
    test: /\.woff(\?v=\d+\.\d+\.\d+)?$/,
    loader: "url?limit=10000&mimetype=application/font-woff&name=[name].[ext]",
    exclude: /node_modules/
},
{
    test: /\.(otf|eot|png|svg|ttf|woff|woff2)(\?[\s\S]+)?$/,
    loader: "url?limit=10000",
    include: "node_modules/font-awesome/fonts"
}
Run Code Online (Sandbox Code Playgroud)

我也尝试过这样的正则表达式而且它不起作用:

{ test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: "url?limit=10000" }
Run Code Online (Sandbox Code Playgroud)

font-awesome reactjs webpack

5
推荐指数
2
解决办法
1万
查看次数