加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

webpack不反映带有react和django的js文件中的更改

发布时间:2020-12-15 20:32:32 所属栏目:百科 来源:网络整理
导读:我正在尝试使用React Frontend和Django Rest Framework后端构建一个应用程序.我使用webpack_loader并按照在线说明进行设置.我从Amazon CDN提供静态文件,但是当我通过 python manage.py运行服务器在本地测试时,我对js文件的本地更改没有反映出来 webpack.conf
我正在尝试使用React Frontend和Django Rest Framework后端构建一个应用程序.我使用webpack_loader并按照在线说明进行设置.我从Amazon CDN提供静态文件,但是当我通过 python manage.py运行服务器在本地测试时,我对js文件的本地更改没有反映出来
webpack.config.js

var debug = process.env.NODE_ENV !== "production";
var webpack = require('webpack');
var path = require('path');
var BundleTracker = require('webpack-bundle-tracker');

module.exports = {
  context: path.join(__dirname,"src"),devtool: debug ? "inline-sourcemap" : null,entry: {
      index: ["./js/index.js"],explore: ["./js/explore.js"],post: ["./js/post.js"]
  },module: {
    loaders: [
      {
        test: /.jsx?$/,exclude: /(node_modules|bower_components)/,loader: 'babel-loader',query: {
          presets: ['react','es2015','stage-0'],plugins: ['react-html-attrs','transform-class-properties','transform-decorators-legacy'],}
      }
    ]
  },output: {
    path: __dirname + "/src/bundle",filename: "[name].min.js",publicPath: "/src/bundle/",},plugins: [
    new webpack.optimize.DedupePlugin(),new webpack.optimize.OccurenceOrderPlugin(),new webpack.optimize.UglifyJsPlugin({ mangle: false,sourcemap: false }),new webpack.optimize.CommonsChunkPlugin('vendors','vendors.js'),new BundleTracker({filename: './webpack-stats.json'}),],};

我跑了什么

node_modules/.bin/webpack --config webpack.config.js
python manage.py collectstatic --noinput -i node_modules

它将静态文件收集到CDN上.我仔细检查了两个vendors.js和index.min.js在CDN上是否正确,并且不包含我已更改的旧URL.现在我真的很困惑为什么它仍然能够呈现旧的东西.

“Header.js”在本地:

<img className="logo"src="https://d3h7hz7pb749sg.cloudfront.net/static/src/binary/icon/logo.png" alt="Pique Logo" draggable="false" />

但是在服务器上运行时:

But when run server

解决方法

好吧,我发现了原因.这是因为CDN缓存了js文件,因为我没有更改文件的名称,所以它认为文件没有更新并保持使用缓存.解决方案是每次修改js文件时添加哈希值,因此CDN会呈现新文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读