Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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
将Laravel.env变量添加到Vue组件_Laravel_Vue.js_Environment Variables_Laravel Mix - Fatal编程技术网

将Laravel.env变量添加到Vue组件

将Laravel.env变量添加到Vue组件,laravel,vue.js,environment-variables,laravel-mix,Laravel,Vue.js,Environment Variables,Laravel Mix,我想使用Vue JS访问.env变量 在我的.env文件中,我已将'MIX_u2;'前缀添加到变量中 MIX_VAR=key 然后在vue组件中,我在created()中: 结果是我一直没有定义 我已尝试清除配置缓存,但仍然遇到相同的问题。有什么想法吗?您必须为要替换的环境变量构建JS。您可以使用npm或warn 从官方文件中提取@ 环境变量 您可以通过在.env文件中的一个键前面加上Mix\前缀,将环境变量注入到Mix中: MIX_SENTRY_DSN_PUBLIC=http://exam

我想使用Vue JS访问.env变量

在我的.env文件中,我已将'MIX_u2;'前缀添加到变量中

MIX_VAR=key
然后在vue组件中,我在created()中:

结果是我一直没有定义


我已尝试清除配置缓存,但仍然遇到相同的问题。有什么想法吗?

您必须为要替换的环境变量构建JS。您可以使用
npm
warn


从官方文件中提取@


环境变量

您可以通过在.env文件中的一个键前面加上Mix\前缀,将环境变量注入到Mix中:

MIX_SENTRY_DSN_PUBLIC=http://example.com
在.env文件中定义变量后,可以通过process.env对象进行访问。如果在运行监视任务时该值发生更改,则需要重新启动该任务:

process.env.MIX_SENTRY_DSN_PUBLIC


要记住的最重要的一点是,你必须使用它才能工作。Mix是注入环境变量的内容。

在windows中:


在webpack.mix中,这对我来说没有任何要求

。。。只需在env文件中添加一个前缀为:MIX\u0的新变量

MIX_API_URL=http://laravel:8000
但需要重新启动php artisan服务,并重新启动npm运行监视

  let api_url = process.env.MIX_API_URL;
  console.log("my env variable:");
  console.log(api_url);
在linux或docker中:

我还没用呢

 process.env.MIX_VAR /  process.env.MIX_STRIPE_KEY
它将在没有任何设置的情况下工作。只要运行这个命令

npm运行产品


这是通过ajax实现的吗?您可以通过控制器使用
env()
helper来访问env变量。我发现这不安全,变量的值被带到应用程序app.js文件中。您还应该添加
require('dotenv').config()到webpack.mix.js的顶部这对我来说没有任何要求。。。只需在env文件中添加一个前缀为MIX_uu的新变量,但需要重新启动php artisan serve,并重新启动npm run watch…@Dazzle在我的情况下,这两种方式都不起作用:/with或with
require('dotenv').config()您是否
npm安装了dotenv
?尝试重新编译或删除node_modules文件夹并重新安装,通过在env文件中添加一个前缀为MIX_u的新变量对我有效,但需要重新启动php artisan Service并重新启动npm run watch…@darryl-e-clarke(如果你愿意)你能接受StackOverflow用户在过去三个月内投票的另一个新答案吗?)myserver是windows,但在docker中不起作用。我不知道为什么在我的情况下,这两种方式都不起作用:/with或without
require('dotenv').config()
@Pathros您需要停止(php artisan服务)并再次运行,以获取环境文件中的任何更改。。。你测试过了吗?请检查一下,我正在使用拉维尔家园。我已多次重新启动服务器,但未识别/提取混合变量。我不明白为什么。我遗漏了什么?@Pathros您的本地或开发pc呢?
 process.env.MIX_VAR /  process.env.MIX_STRIPE_KEY