create-react-app打包问题

请教一下各位,就是我用creact-react-app创建了一个单页面程序,npm run build打包后 安装了server后 页面是能打开 但是样式和图片并没有出来。下面是我没有打包之前的文件目录:
clipboard.png
下图是打包后文件的目录:

clipboard.png
打包后没有找到图片 css文件在static的css文件夹里面,但是不知道为什么打包后的网页没有了图片和样式,是因为我在创建项目的时候 文件的位置放置不对吗?还是其他原因导致的
下图是package.json文件的内容:

clipboard.png

下图是build后static文件夹下的内容:

clipboard.png

阅读 12.6k
1 个回答

如果你是通过在html中link标签引入 css和图片,那么要不使用的图片和css文件放到public文件夹下。如果是在js中通过import 引入,直接放到src下即可。另外,打包前在package.json文件里添加一个配置:

"homepage":"."

更新:

homepage位置错了,不是放到scripts里,放到和scripts平级的位置:

"scripts": {
},
"homepage":"."

2017-9-26更新:

create-react-app 默认是不支持CSS预处理器的。要让它支持less,在不执行npm run eject的情况下,有两种方法:

1.使用react-app-rewire-less插件。npm install --save react-app-rewire-less
然后在项目根目录下创建 config-overrides.js文件,添加如下内容:

const rewireLess = require('react-app-rewire-less');
 
/* config-overrides.js */
module.exports = function override(config, env) {
  config = rewireLess(config, env);
  return config;
}

2.官方方案:https://github.com/facebookin...

方法1更简单些。

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