NativeScript-Webpack环境变量不起作用

时间:2018-12-19 08:47:39

标签: webpack nativescript nativescript-environment

我遵循this随时随地获取环境变量。我在myGlobal文件中定义了webpack.config

...
new webpack.DefinePlugin({
    "global.TNS_WEBPACK": "true",
    "myGlobal.ENV_NAME": JSON.stringify(env.name || "development"),
    "process": undefined,
})
...

因此,myGlobal现在应该在我的.ts文件中可用。 但是,当我将其记录在ApolloService的构造函数中时。我收到参考错误

apolloService.ts

declare let myGlobal: any;

@Injectable()
export class ApolloService {


 constructor() {
    console.log(myGlobal.ENV_NAME, '*******'); // Throws Error
 }
  

参考错误:在新的ApolloService上未定义myGlobal

我无法弄清楚哪里出了问题。请帮忙!

1 个答案:

答案 0 :(得分:0)

也许这会有所帮助?

我已经这样设置了:

//webpack:
            new webpack.DefinePlugin({
                "global.TNS_WEBPACK": "true",
                'process.env': {
                    'envtype': JSON.stringify(env && env.envtype ? env.envtype : "dev"),
                }                
            }),

然后我可以在我的应用程序中对其进行访问:

declare var process: any;
if (typeof process !== 'undefined' && process && process.env) {
 console.log(process.env);
}