簡體   English   中英

在車把模板中訪問環境變量

[英]Access environment variables in handlebar template

我需要從車把模板訪問環境變量。 我可以在其他地方使用我的環境變量,所以我知道它已正確設置。 但是在我運行g.src = process.env.MTM;后,我的index.html頁面只顯示g.src = process.env.MTM; 而不是g.src = myEnvironmentVariable

這是我模板中的相關代碼:

    <script type="text/javascript">           
        var _mtm = _mtm || [];
        _mtm.push(
        {
            'mtm.startTime': (new Date().getTime()),
            'event': 'mtm.Start'
        });
        var d = document,
            g = d.createElement('script'),
            s = d.getElementsByTagName('script')[0];
        g.type = 'text/javascript';
        g.async = true;
        g.defer = true;
        g.src = process.env.MTM;
        s.parentNode.insertBefore(g, s);
    </script>

我得到一個錯誤,說明過程未定義。

(index):28 Uncaught ReferenceError: process is not defined

有沒有辦法做到這一點? 我是以錯誤的方式來做這件事的嗎? 我需要將g.src設置為不同的URL,具體取決於我正在編譯的環境。

我想到了。 我只需要通過gulp管道到模板。

return gulp

    .pipe(hb()            
        .data({
            version: pkg.version,
            date: new Date().toISOString(),
            env: process.env.NODE_ENV,
            mtmUrl: process.env.MTM,
            serverData,
        })           

然后我可以像這樣訪問它:

g.src= {{mtmUrl}};

暫無
暫無

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

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