Comments (3)
@joefraley, I'm personally curious, is their any particular reason why these sort of imports are considered bad practice?
from swapi-graphql.
@AGS- basically its an open question how they should work or what to expect from them. but it does look like the thunk method of calling code used in this SWAPI example's resolvers circumvents the issue.
for concerns, see:
http://eloquentjavascript.net/10_modules.html#h_E/zWqBFdy8
https://stackoverflow.com/questions/30378226/circular-imports-with-webpack-returning-empty-object#answer-30390378
but interesting discussion here: https://medium.com/content-uneditable/circular-dependencies-in-javascript-a-k-a-coding-is-not-a-rock-paper-scissors-game-9c2a9eccd4bc#354f
from swapi-graphql.
@joefraley - I personally have no strong opinion on the matter. I've seen many coding patterns with circular dependencies that had a negative impact on the code/library quality, and formed a generally negative opinion towards it, but I agree with you that it should be more about what the intention of having a circular dependency is.
I think the medium article that you included explains the case with swapi-graphql
very well. We could definitely include all types into one file and remove the need for the circular dependency, but I believe that having different files for each type, although with the circular dependency, allows for a better readability/understanding of each type.
Just fwiw, This block suggests that the need for requiring these modules is to construct the connection types.
from swapi-graphql.
Related Issues (20)
- Doesn't work on windows. sh file doesn't run. HOT 1
- Build doesn't work on windows because depends on bash script HOT 1
- type bug & shell bug HOT 3
- Broken starship connection HOT 9
- Endpoint to get GraphQL Schema using a GraphQL Client HOT 2
- Password Expired HOT 1
- Where's the schema.graphql file?
- Live demo link is broken HOT 33
- error api by CORS
- Demo broken HOT 1
- 👀 Netlify is failing. Need to investigate this HOT 2
- CORS Issue HOT 13
- More GraphQL language feature examples HOT 2
- npm install not working on Windows - Unable to set NODE_ENV Environment Variable HOT 1
- Update master to main HOT 1
- Search films by title
- url text color needs to be brighter HOT 6
- https://graphql.org/swapi-graphql returns 404 HOT 5
- build:lamba command not working on windows
- https://graphql.org/swapi-graphql is not working? HOT 2
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 swapi-graphql.