diff --git a/clients/ts/signalr/src/DefaultHttpClient.ts b/clients/ts/signalr/src/DefaultHttpClient.ts
index 0fac925a1ecbdc2f1826b4ebd9924811aa366b70..b1f19d401f2706862db5a730c0a9955f3a923f4a 100644
--- a/clients/ts/signalr/src/DefaultHttpClient.ts
+++ b/clients/ts/signalr/src/DefaultHttpClient.ts
@@ -8,8 +8,10 @@ import { XhrHttpClient } from "./XhrHttpClient";
 
 let nodeHttpClientModule: any;
 if (typeof XMLHttpRequest === "undefined") {
-    // tslint:disable-next-line:no-var-requires
-    nodeHttpClientModule = require("./NodeHttpClient");
+    // In order to ignore the dynamic require in webpack builds we need to do this magic
+    // @ts-ignore: TS doesn't know about these names
+    const requireFunc = typeof __webpack_require__ === "function" ? __non_webpack_require__ : require;
+    nodeHttpClientModule = requireFunc("./NodeHttpClient");
 }
 
 /** Default implementation of {@link @aspnet/signalr.HttpClient}. */
diff --git a/clients/ts/signalr/src/HttpConnection.ts b/clients/ts/signalr/src/HttpConnection.ts
index 664a625b7b1d3972400ddb44c43ab5b7fa0fd6fc..470c33e33976fc351904a3d07e49a69411b74c0d 100644
--- a/clients/ts/signalr/src/HttpConnection.ts
+++ b/clients/ts/signalr/src/HttpConnection.ts
@@ -39,10 +39,11 @@ const MAX_REDIRECTS = 100;
 let WebSocketModule: any = null;
 let EventSourceModule: any = null;
 if (typeof window === "undefined" && typeof require !== "undefined") {
-    // tslint:disable-next-line:no-var-requires
-    WebSocketModule = require("ws");
-    // tslint:disable-next-line:no-var-requires
-    EventSourceModule = require("eventsource");
+    // In order to ignore the dynamic require in webpack builds we need to do this magic
+    // @ts-ignore: TS doesn't know about these names
+    const requireFunc = typeof __webpack_require__ === "function" ? __non_webpack_require__ : require;
+    WebSocketModule = requireFunc("ws");
+    EventSourceModule = requireFunc("eventsource");
 }
 
 /** @private */