升级到angular-6.x会出现“Uncaught ReferenceError:global is not defined”。 [英] Upgrading to angular-6.x gives "Uncaught ReferenceError: global is not defined"

查看:353
本文介绍了升级到angular-6.x会出现“Uncaught ReferenceError:global is not defined”。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我将我的项目从angular-5.x升级到angular-6.x并且它开始给出以下错误,甚至创建虚拟全局变量也不起作用,如此处给出 Angular 6 Auth0 - 全局未定义



错误如下:

 未捕获的ReferenceError:未定义全局
at Object ../ node_modules / has-binary2 / index.js (index.js:10)
at __webpack_require__(bootstrap:81)
at Object ../ node_modules / socket.io-parser / index.js(index.js:8)
at __webpack_require__(bootstrap:81)
at Object ../ node_modules / socket.io-client / lib / index.js(index.js:7)
at __webpack_require__(bootstrap:81)
at Object ../ src / app / app4pc / apiConnection / services / ApiConnectionServer.ts(auth.interceptor.ts:8)
at __webpack_require__(bootstrap:81)
at Object ../ src / app /app4pc/apiConnection/toServer.module.ts (ApiConnectionServer.ts:11)
at __webpack_require__(bootstrap:81)

解决此问题后我收到以下错误:

 未捕获的ReferenceError:进程未定义
at Object ../ node_modules / process-nextick -args / index.js(index.js:3)
at __webpack_require__(bootstrap:81)
at Object ../ node_modules / readable-stream / lib / _stream_readable.js(_stream_readable.js:26 )
at __webpack_require__(bootstrap:81)
at Object ../ node_modules / readable-stream / readable-browser.js(readable-browser.js:1)
at __webpack_require__(bootstrap: 81)
at Object ../ node_modules / simple-peer / index.js(index.js:7)
at __webpack_require__(bootstrap:81)
at Object ../ src / app /util/services/call.services.ts(notification.service.ts:12)
at __webpack_require__(bootstrap:81)

并一直持续。

解决方案

在起始页面中添加以下代码,例如index.html

  var global = global ||窗口; 
var Buffer = Buffer || [];
var process = process || {
env:{DEBUG:undefined},
version:[]
};

例如。如下:

 <!doctype html> 
< html lang =en>
< head>
< meta charset =utf-8>
< title>客户< / title>
< base href =/>
< meta name =viewportcontent =width = device-width,initial-scale = 1>
< link rel =icontype =image / x-iconhref =favicon.ico>
< script>
var global = global ||窗口;
var Buffer = Buffer || [];
var process = process || {
env:{DEBUG:undefined},
version:[]
};
< / script>
< / head>
< body>
< app-root>
< div class =loader>< / div>
< / app-root>
< / body>
< / html>

以上将适用于混合应用程序(在节点环境中)以及浏览器中



  • var global = global || window; // for Uncaught ReferenceError:global is not defined


  • var Buffer = Buffer || []; //未捕获的ReferenceError:未定义缓冲区


  • var process = process || {
    env:{DEBUG:undefined}
    }
    //对于Uncaught ReferenceError:进程未定义


  • var process = process || {
    env:{DEBUG:undefined},
    version:[]
    };
    // Uncaught TypeError:无法读取未定义的属性'slice'




I upgraded my project from angular-5.x to angular-6.x and it started giving the following error and even creation of dummy global variable does not work as given here Angular 6 Auth0 - global not defined

The error is as follows:

Uncaught ReferenceError: global is not defined
    at Object../node_modules/has-binary2/index.js (index.js:10)
    at __webpack_require__ (bootstrap:81)
    at Object../node_modules/socket.io-parser/index.js (index.js:8)
    at __webpack_require__ (bootstrap:81)
    at Object../node_modules/socket.io-client/lib/index.js (index.js:7)
    at __webpack_require__ (bootstrap:81)
    at Object../src/app/app4pc/apiConnection/services/ApiConnectionServer.ts (auth.interceptor.ts:8)
    at __webpack_require__ (bootstrap:81)
    at Object../src/app/app4pc/apiConnection/toServer.module.ts (ApiConnectionServer.ts:11)
    at __webpack_require__ (bootstrap:81)

after resolving this I get following error:

Uncaught ReferenceError: process is not defined
    at Object../node_modules/process-nextick-args/index.js (index.js:3)
    at __webpack_require__ (bootstrap:81)
    at Object../node_modules/readable-stream/lib/_stream_readable.js (_stream_readable.js:26)
    at __webpack_require__ (bootstrap:81)
    at Object../node_modules/readable-stream/readable-browser.js (readable-browser.js:1)
    at __webpack_require__ (bootstrap:81)
    at Object../node_modules/simple-peer/index.js (index.js:7)
    at __webpack_require__ (bootstrap:81)
    at Object../src/app/util/services/call.services.ts (notification.service.ts:12)
    at __webpack_require__ (bootstrap:81)    

And continues on and on.

解决方案

Add following code in your starting page e.g. index.html

var global = global || window;
    var Buffer = Buffer || [];
    var process = process || {
      env: { DEBUG: undefined },
      version: []
    };

e.g. follows:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Client</title>
  <base href="/">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
  <script>
    var global = global || window;
    var Buffer = Buffer || [];
    var process = process || {
      env: { DEBUG: undefined },
      version: []
    };
  </script>
</head>
<body>
  <app-root>
    <div class="loader"></div>
  </app-root>
</body>
</html>

Above will work on hybrid app(in node environment) as well as in browser

  • var global = global || window; // for Uncaught ReferenceError: global is not defined

  • var Buffer = Buffer || []; // for Uncaught ReferenceError: Buffer is not defined

  • var process = process || { env: { DEBUG: undefined } } // for Uncaught ReferenceError: process is not defined

  • var process = process || { env: { DEBUG: undefined }, version: [] }; // Uncaught TypeError: Cannot read property 'slice' of undefined

这篇关于升级到angular-6.x会出现“Uncaught ReferenceError:global is not defined”。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆