-
Notifications
You must be signed in to change notification settings - Fork 6k
Open
Labels
Milestone
Description
Background
Using Swagger Editor, I created a spec for my API.
I see that Swagger Editor also provides a "Generate a client" option (probably using Swagger Codegen).
Objective
I want to generate a client and use it in my React app (created with create-react-app), and preferably enjoy some static typing capabilities (currently using flow).
Currently
None of the options in Swagger Editor there seem to work:
javascript
- provides a vanilla node module that you need tonpm install
it as a dependency to your project. Now, not only this doesn't have any classes / types, but also fails with:
Uncaught Error: Cannot find module "ApiClient"
at webpackMissingModule (index.js:17)
at exports.ApiClient (index.js:17)
at Object.<anonymous> (index.js:22)
at __webpack_require__ (bootstrap 75f547b…:555)
at fn (bootstrap 75f547b…:86)
at new Index (index.js:87)
at ReactCompositeComponent.js:295
at measureLifeCyclePerf (ReactCompositeComponent.js:75)
at ReactCompositeComponentWrapper._constructComponentWithoutOwner (ReactCompositeComponent.js:294)
at ReactCompositeComponentWrapper._constructComponent (ReactCompositeComponent.js:280)
typescript-*
options are not compatible with js, and I don't necessarilty know how / want to add TypeScript to my project.*-angular
options are of course irrelevant.
Approaches
- Generate
.ts
file and covert it toflow
. How?? - Manually adding the generated
.js
files to my project. Currently doesn't work as the generated code comes with its own dependencies. - Add TypeScript to my project (should I replace
flow
then?). I think it's not that easy without ejecting out of the create-react-app boilerplate.
I'm sure that a javascript client is one of the most popularly used generated client, so what am I missing here???
Thanks