create react app 引入单张图片报错

为什么logo可以,a.png就不可以?

import React, { Component } from 'react';
import './App.css';
import logo from './logo.svg'
import imgs from './a.png'

let imgJson = require('./imageDatas');

function imgURL(imgDateArray) {

    for(var i=0;i<imgDateArray.length;i++){
        var signleImageData = imgDateArray[i];
        signleImageData.imageURL =`./react-card/src/img/${signleImageData.fileName}`;
       // console.log(signleImageData.imageURL)
        return signleImageData.imageURL
        //imgDateArray[i] = signleImageData;
    }
}

var url = imgURL(imgJson);
console.log(url);

class App extends Component {

  render() {
    return (
      <div className="App">
        <header className="App-header">
          <img src={logo} className="App-logo" alt="logo" />
            <img src={imgs} />
          <h1 className=''>Welcome to React  </h1>
        </header>
        <p className="App-intro">
          To get started, edit <code>src/App.js</code> and save to reload.
        </p>
      </div>
    );
  }
}

export default App;

clipboard.png

阅读 3.4k
3 个回答

文件是否存在, webpack module 里面可否加 png 的处理

应该是没有配置合适的webpack-loader,一个是svg,一个是png。loader是不一样的

不过按道理讲的话,我们使用url-loader就可以同时处理svg和png。

        {
          test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
          exclude: /node_modules/,
          include: [opts.src],
          use: [
            {
              loader: 'url-loader',
              options: {
                limit: opts.urlLimit,
                name: url_name
              }
            }
          ]
        }

所以至少贴一下你的配置吧?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题