簡體   English   中英

無法訪問 NuxtJS 應用程序頭中導入的腳本中的 .env 變量

[英]Unable to access .env Variables in script imported in Head of NuxtJS App

nuxtJS 3中,我能夠通過nuxt.config.ts加載腳本,但是當嘗試訪問加載腳本中的process.env.VARIABLE_NAME時,它的undefined -

這是我的nuxt.config.ts -

meta: {
 script: [{ src: '/test.js' }, { src: '/demo/demo.js' }],
}

這被注入到HTML中 -

<script src="/test.js"></script>
<script src="/demo/demo.js"></script>

注意-

該腳本適用於 New Relic,它具有一些機密的 .env 變量,這就是為什么需要對世界隱藏它的原因。

請建議我一種在這些腳本中訪問我的 .env 變量的方法。 通過Plugins嘗試但沒有運氣。

我認為您正在使用 Vite。 你可以試試下面::

nuxt.config.ts

env: {
    baseUrl: process.env.BASE_URL || 'http://localhost:3000'
  },
  meta: {
    script: [{ src: '/test.js', type: "module" }],
  },

.env

VITE_BASE_URL = http://localhost:3001

測試.js

console.log(`variable ::: ${import.meta.env.VITE_BASE_URL}`)

我們不必擔心New Relic提供的腳本中的這些 Env 變量。 這是支持此聲明的社區答案-

https://discuss.newrelic.com/t/nreum-script-exposes-license-key-in-source-code-is-it-fine/55485/2

所以,最終我在沒有從腳本中刪除新的 relic 變量的情況下完成了我的實現。 但是,將來如果有人想發布我們怎么能,答案將是最受歡迎的!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM