一.配置proxy代理
配置代理其实很简单,但是理解其中我还不是太懂,贴一下代码看一下配置吧!
说一下我遇见的问题,因为以前用webpack配置需要在config里配置devServer,网查脚手架搭建的项目不用这么麻烦,直接package.json里配置就ok。配置完成一直出现404 not found,最后发现是我引得不对,宛如智障一个,拽着朋友检查,别粗心。(ps:过段时间有空仔细研究一下其中原理)
二.引入antd,但是没有样式,我真是跪了,因为版本,我查了N久的文档
因为Antd依赖于Less,所以安装好less less-loader
npm install --save-dev less-loader less
贴一下这位大神的解答,这种方法只要用对版本(less2.x)应该是可以的 链接:http://cnodejs.org/topic/5a31f0bdd92f2f5b185ace61
我的方法:
1.安装好less、less-loader的基础上在package.json配置好plugins(注意是plugins啊,不要少个s)
2.分别在webpack.config.dev和webpack.config.prod 查找test: /\.css$/替换成test: /\.(css|less)$/,
在test下找到use,添加less-loader
use: [
{...},
{...},
,{
loader: require.resolve('less-loader'), // compiles Less to CSS
options: { javascriptEnabled: true }
//就是因为它!!!!如果你是less3.x的版本就加上这句话,不然就会报错下图
}
],
成功啦!!!
三.也差不多了就像试试npm run build,也不报错但是就是不行,让我安装什么npm i -g server server -build,看不懂,我在解决第二个问题的时候看了一大神的帖子,链接如下:https://www.jianshu.com/p/f01373945c00
大神的解释是:用create-react-app脚手架搭建的react项目使用 npm run build 之后生成的打包文件只能在根目录访问,这样放在服务器目录就访问不到了,so多加一个点就ok啊。。。
还有一个问题是路由的问题,因为我用的react-router4.0起初用的是BrowserRouter路由,但是打包后报错
react:Uncaught DOMException: Failed to execute 'pushState' on 'History': A history state object with URL
大家都推荐使用HashRouter,结果真的可以,路由我还没来得及好好看文档。
初学者请多关照,友好交流。。。。
转载于:https://juejin.im/post/5ae4432df265da0b7f445008