Comments (11)
Webstorm 2019.2
- Settings --> Languages & Frameworks --> JavaScript --> Libraries
- Download --> search for "prop-types" --> Download and Install --> Ok
from prop-types.
https://youtrack.jetbrains.com/issue/WEB-26418
from prop-types.
Based on the issue liked by @thebuilder, this should be fixed in Webstorm 2017.1.3.
from prop-types.
@thebuilder I installed the package you referenced, invalidated Webstorm cache and restarted however issue still remains.
from prop-types.
Thanks for raising! Closing as this is not actionable for us, but glad you filed the issue with WS.
from prop-types.
Same. Holy shit.
from prop-types.
Yep, same here. Very annoying.
from prop-types.
Not sure if this is a problem of the module or it's a problem of Webstorm (some config) itself?
from prop-types.
Adding the TypeScript d.ts files to a project usually helps with code completion in WebStorm. Check out DefinitelyTyped. Adding the React package was the only way i could get React code completion (and React.PropTypes) to work.
A prop-types
package has just been added, try it! https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/prop-types/
from prop-types.
@lashae Yeah, tried it myself. Seems WebStorm can't make the connection between it and the prop-types
module. I'm no TypeScript expert, so not sure what the correct way of setting up a package like this is.
I did manage to partially fix it by wrapping the interfaces in a typescript module. This removes the WebStorm warning, but doesn't provide the code hinting.
prop-types.d.ts
declare module "prop-types" {
interface Validator<T> {
(object: T, key: string, componentName: string, ...rest: any[]): Error | null;
}
interface Requireable<T> extends Validator<T> {
isRequired: Validator<T>;
}
type ValidationMap<T> = { [K in keyof T]?: Validator<T> };
interface PropTypes {
string: Requireable<any>;
any: Requireable<any>;
array: Requireable<any>;
bool: Requireable<any>;
func: Requireable<any>;
number: Requireable<any>;
object: Requireable<any>;
string: Requireable<any>;
node: Requireable<any>;
element: Requireable<any>;
instanceOf(expectedClass: {}): Requireable<any>;
oneOf(types: any[]): Requireable<any>;
oneOfType(types: Validator<any>[]): Requireable<any>;
arrayOf(type: Validator<any>): Requireable<any>;
objectOf(type: Validator<any>): Requireable<any>;
shape(type: ValidationMap<any>): Requireable<any>;
}
}
I'm guessing the actual problem with code completion is due to the way the React packages are distibuted - Maybe WebStorm can't handle the dev/production env switches
from prop-types.
@thebuilder What do you think the best thing to do is now? Should we open an issue on Webstorm issue tracker or try to reach someone (preferable a contributer) at least to verify that this issue is due to prop-types project?
from prop-types.
Related Issues (20)
- _propTypes.default.shapeOf is not a function HOT 1
- Potential isRequired bug in v15.8.0 and above HOT 10
- TypeError: Cannot destructure property 'checkPropTypes' as it is undefined. HOT 2
- error (checkPropTypes is not a function) while using with sveltekit HOT 1
- Accidental issue creation, apologies
- Failed prop type: Converting circular structure to JSON when stringifying React jsx HOT 6
- Conditional prop for value another prop HOT 2
- Error : `_propTypes2.default.oneOfType is not a function` HOT 2
- `oneOfType()` does not seem to allow all types specified HOT 2
- SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED HOT 1
- Importing a reference to PropTypes as opposed Proptypes directly HOT 4
- List transitive failures on failure of oneOfType
- The `prop-types` package import is not suddenly recognized when running jest HOT 6
- Update prop-types Version | Severity: high HOT 2
- [spam]
- Add a PropType for an exact shape plus "...rest" properties HOT 1
- TS compiler complains when PropTypes property is set externally from the component.propTypes HOT 2
- Can't pass server component to PropTypes.node HOT 6
- Remove object-assign dependency HOT 1
- False positive isRequired validation for never rendered components HOT 1
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 prop-types.