【发布时间】:2018-06-20 16:15:00
【问题描述】:
我正在使用安装了 VueAxios 的标准 Vue starer webpack template。我想在使用 dev 命令构建时使用 .env 变量配置 axios。我在/config/index.js 中设置了所有内容:
const devEnv = require('./dev.env')
module.exports = {
...
host: devEnv.host || 'localhost',
port: devEnv.port || 8080,
...
}
然后我在同一目录中的dev.env.js 中定义我的主机和端口,一切正常。
const dotenv = require('dotenv').config({path: '../.env'})
let host = process.env.VUE_HOST;
let port = +process.env.VUE_PORT;
module.exports = merge(prodEnv, {
NODE_ENV: '"development"',
host,
port
})
但问题是我无法访问我的 Vue 应用程序的 src/main.js 内的主机值。
如果我尝试这样做,我会收到一个错误
vue 没有定义
import axios from 'axios'
import VueAxios from 'vue-axios'
...
Vue.use(VueAxios, axios)
Vue.axios.defaults.baseURL = `http://${process.env.host}:${process.env.port}`;
虽然端口工作正常,但主机没有并抛出错误。
【问题讨论】:
-
你导入
Vue了吗? -
是的,为了简单起见,我只是跳过了那部分。这是一个标准的 vue-cli webpack 模板。
标签: javascript webpack vue.js axios