Comments (5)
Thanks for the kind words and bringing this up. I think this will be pretty easy for me to do. I am using a lot of React myself recently, so I want this too. I'll update this issue with my progress.
from dumb-jump.
@axyz I just pushed up a change that should cover most, if not all, of these cases. It should be available via MELPA within 12 hours of now. Please re-open this issue if you run into any problems. Thanks again!
from dumb-jump.
great, thank you. Looking forward for it
from dumb-jump.
So I got this working locally for React for the vast majority of my React code:
class MyComponent extends Component { ...
used like<MyComponent someProp={1}>...</MyComponent>
const mySomething = <div>...</div>;
used like<div>{mySomething}</div>
That covers the vast majority of my current React code. Is there any usage I am missing that I should support? If so, a code snippet or repo to test against would be appreciated. Thanks!
from dumb-jump.
I use a lot of stateless components in function form so something like:
const MyComponent = props => <div>{props.text}</div>
but may also be
export default MyComponent = ({text}) => <div>{text}</div>
or more exotic stuff like
const MyComponent = ({
prop1,
prop2,
}, {
context1,
context2,
}) => (
<div>{prop1} {context1}<div>
);
basically any function may be a component, so stuff like <MyComponent>
should be search for source in the whole function scope.
If this leads to problems in the results you can somehow restrict to functions that returns jsx code or React.createElement, but it may be tricky.
Another possible case is the one where you have the name of the export different from the name of the function or class and being a simple assignation e.g.
class MyBaseComponent extends Component .....
const DecoratedComponent = Radium(Rezponsive(MyBaseComponent);
export default DecoratedComponent
but it should be an edge case, as usually people just export default it.
I will keep you updated if I can think of other edge cases.
P.S. lot of people use extends React.Component instead of just Component, in case you want to use it in a regexp.
from dumb-jump.
Related Issues (20)
- dynamic environment path HOT 6
- nim multi line definition
- help needed HOT 1
- Need for tags table HOT 1
- Missing rule: defmacro for elisp HOT 2
- Issue with git-grep HOT 10
- Dumb-jump in Windows Emacs with WSL files does not jump correctly
- Dumb jump Dlang support
- Works together perfectly with Consult for live previewing definition candidates
- Consider implementing `xref-backend-references` HOT 2
- Supprt Vue.js HOT 1
- Iterator of a foreach loop in C# is not found as a definition
- dumb-jump doesn't find all clojure definitions HOT 1
- no debug output when shell command hangs
- org-babel Support? HOT 1
- dumb-jump-goto-file-line-test failure against GNU Emacs 29.1 HOT 3
- Failing to find some Rust enums
- no definitions found with .ino files
- purescript support HOT 1
- `git grep` is preferred over `rg` but is massively deficient HOT 8
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 dumb-jump.