gpt4 book ai didi

laravel - 在 Inertia.js Vue 文件中访问 Laravel 的 .env 变量

转载 作者:行者123 更新时间:2023-12-04 02:46:14 29 4
gpt4 key购买 nike

我从 Inertia Laravel 示例开始 https://github.com/drehimself/inertia-example

这只不过是 Laravel 和 Vue 在一个整体代码库中,使用 Inertia.js:
https://github.com/inertiajs/inertia-laravel
https://github.com/inertiajs/inertia-vue

我试图在我的 .vue 组件文件中访问 Laravel 的 .env 变量

.env 文件:

APP_NAME=ABC

在 app\Providers\AppServiceProvider.php 中:

public function register()
{
Inertia::share('appName', env('APP_NAME'));
}

在 resources\js\Home.vue 组件中:
<template>
<div>
<span class="tw-text-left">{{ appName }}</span>
</div>
</template>

<script>
export default {
props: [
"appName",
]
}
</script>

在我的 vue 控制台中,appName 显示为空白。它应该显示“ABC”,但没有。
这里发生了什么,以及我如何访问我所有的 env 变量,理想情况下不通过 Controller 传递所有内容,这似乎不是很有效?

最佳答案

我终于让它工作了。以下是方法,对于那些有兴趣的人:
在 AppServiceProvider 中:

        Inertia::share(function () {
return [
'app' => [
'name' => config('app.name'),
],
];
});

在你的 vue 文件中:
<template>
<div>
App name: {{ $page.app.name }}
</div>
</template>

第二部分是我所缺少的..我试图接受 app.name Prop ,但缺少 $page。
希望这对某人有帮助!

关于laravel - 在 Inertia.js Vue 文件中访问 Laravel 的 .env 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57194840/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com