Comments (2)
I'm not sure what the best approach is to this kind of problem (not loading a polyfill if the platform already supports it). Right now the library is smart enough not to patch the Proxy object if it is already conforming, but obviously the code necessary to patch it must be shipped regardless.
I try to keep reflect.js as free from external module loading dependencies as possible, so that it works unchanged in both the browser and node. I'm not sure how to do conditional loading in a platform-independent way.
Given that you're worried about code size, I assume you're mostly interested in using reflect.js
in the browser. In that case it's always possible to conditionally load reflect.js
based on a test such as if (typeof Reflect === undefined || typeof Proxy === undefined || typeof Proxy !== "function") { /* dynamically load <script src="reflect.js"/> */ }
. Would that be sufficient or were you looking for a different kind of solution?
from harmony-reflect.
That makes sense. I work in a non browser environment but this approach should work also
from harmony-reflect.
Related Issues (20)
- "proxies not supported on this platform" error when multiple packages require harmony-reflect HOT 9
- get handler with Symbol HOT 6
- Reflect.Loader HOT 2
- Incompatible with Edge browser HOT 4
- Extending proxy classes HOT 3
- Cannot properly Proxy 'os' methods HOT 2
- Possible incompatibility gulp/jscs HOT 1
- Provide option to turn off warning "getOwnPropertyNames trap is deprecated. Use ownKeys instead" HOT 6
- harmony-reflect borks node repl
- Error when using Reflect.construct on ES2015 classes
- Calling Object.getOwnPropertySymbols() on a Proxy throws an error HOT 2
- 'Illegal access' error when using Object.assign() HOT 1
- Question: Does this work with IE11? HOT 2
- Conflict with `reflect-metadata` HOT 6
- What is the actual license of this package? HOT 2
- Reflect.construct incorrectly calls newTarget, causing infinite loops HOT 1
- Is Reflect.set working as intended?
- Index not found HOT 8
- Does this polyfill works for chrome version 38 ? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from harmony-reflect.