Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用绝对路径的Vue.js img src(django+;网页包)_Javascript_Html_Django_Vue.js_Webpack - Fatal编程技术网

Javascript 使用绝对路径的Vue.js img src(django+;网页包)

Javascript 使用绝对路径的Vue.js img src(django+;网页包),javascript,html,django,vue.js,webpack,Javascript,Html,Django,Vue.js,Webpack,我正在使用django+Vue.js和webpack进行开发。在我的App.vue文件中,我尝试加载img: 在生产中,我使用nginx,它将/static路径定向到我共享的static文件夹中,并且它正在工作。 但是在开发过程中,当我在localhost:8000上运行django并从我的App.vue加载这个js时,它试图从localhost:8000/static/webapp/img/logo.png 我想从localhost:8082/static/webapp/img/logo.p

我正在使用django+Vue.js和webpack进行开发。在我的App.vue文件中,我尝试加载img:

在生产中,我使用nginx,它将
/static
路径定向到我共享的
static
文件夹中,并且它正在工作。
但是在开发过程中,当我在
localhost:8000
上运行django并从我的App.vue加载这个js时,它试图从
localhost:8000/static/webapp/img/logo.png

我想从
localhost:8082/static/webapp/img/logo.png
localhost:8082
是运行webpack的地方)找到它。
我试图更改webpack.config.js中的
publicPath

但它不会改变默认行为,img资产src仍然是
localhost:8000/static/webapp/img/logo.png

如何将img资产的默认基本路径更改为另一个url以使其正常工作?
干杯。

我想:

  • 当我运行webpack节点服务器时,我添加了模式环境变量:
    NODE\u ENV=development NODE server.js
  • 我将img src更改为:
  • 基于
    节点环境设置
    静态URL
  • 它的工作原理应该是这样的。干杯。

    我想:

  • 当我运行webpack节点服务器时,我添加了模式环境变量:
    NODE\u ENV=development NODE server.js
  • 我将img src更改为:
  • 基于
    节点环境设置
    静态URL
  • 它的工作原理应该是这样的。干杯。

    这可能对你有帮助这可能对你有帮助
    if (process.env.NODE_ENV === 'development') {  
      module.exports.output.publicPath = 'http://localhost:8082/'
    }
    
    export default {
      ...,
      data () {
        return {
          ...,
          STATIC_URL: process.env.NODE_ENV === "development" ? "http://localhost:8082/static" : "/static"
        }
      }
    }