Update requestBase to remove implied global scope reference by 'this' #1076
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is submitted for discussion and possible merge. This PR updates
requestBase
so thethis
reference doe not imply the global scope which is aligned with ES6 module semantics and is required for proper bundling with rollup.Rollup, upon seeing a
this
reference in the code whose parent scope is global will redefinethis
toundefined
since that is conformant with ES6 module semantics. (rollup/rollup#759) In this case, since the methods inrequestBase
are mixed into other prototypes during run-time, in practicethis
does not end up referring to the global scope, so the redefinition by rollup causes errors. By enclosing the methods in a parent object thethis
no longer seems to imply the global scope and rollup does not modify thethis
references and this module gets bundled without issue.