Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upJSX support #47
Comments
feross
changed the title
Parse errors
JSX support
Feb 27, 2015
This comment has been minimized.
This comment has been minimized.
|
There ought to be a way to add esprima linting to jscs: cf jscs-dev/node-jscs#708. I tried adding |
This comment has been minimized.
This comment has been minimized.
gaearon
commented
Mar 2, 2015
|
Disabling linting for JSX blocks is a mistaken approach. You won't catch potential issues in them, and constants you use there will appear unused to the linter. The right approach is to use JSX-aware linter, or pipe compiled JSX to linter. |
This comment has been minimized.
This comment has been minimized.
|
@gaearon agreed. Do you have any experience making JSX linters work here, like I looked into above? Help would be great. |
This comment has been minimized.
This comment has been minimized.
gaearon
commented
Mar 2, 2015
|
Wrote an article on teaching ESLint to parse ES6/JSX/some ES7 with Babel a few days ago: https://medium.com/@dan_abramov/lint-like-it-s-2015-6987d44c5b48 It won't help you with |
This comment has been minimized.
This comment has been minimized.
|
Validated using In searching around their issues, it looks like some folks are suggessing using jsxcs as an alternative. running jsxcs with the current rc file does not show a promising result:
So... once #45 is done and only eslint remains, jsx support should be possible. |
feross
added a commit
that referenced
this issue
Mar 7, 2015
feross
added a commit
that referenced
this issue
Mar 9, 2015
feross
added a commit
that referenced
this issue
Mar 12, 2015
This comment has been minimized.
This comment has been minimized.
HenrikJoreteg
commented
Mar 17, 2015
|
+1 if this gets resolved I can tell folks to use this in my upcoming workshop at FluentConf. |
This comment has been minimized.
This comment has been minimized.
|
I'll take another look at adding support for JSX. Can someone point me to a couple repos with JSX in them? If they already use standard style, even better! |
This comment has been minimized.
This comment has been minimized.
|
@feross Here's mine: https://github.com/BeagleLab/beagle/tree/master/js Already standardized. |
This comment has been minimized.
This comment has been minimized.
HenrikJoreteg
commented
Mar 17, 2015
|
@feross also adding you to the little demo app I started on for fluent. |
This comment has been minimized.
This comment has been minimized.
|
Looks like jscs should support jsx now, but its not yet been pushed to npm. |
This comment has been minimized.
This comment has been minimized.
|
OK, so this works, however it depends on jscs in github. The trick is using Detailed by jscs contributor here: |
This comment has been minimized.
This comment has been minimized.
|
https://github.com/BeagleLab/beagle/blob/master/js/views/graphModal.jsx old n busted:
new hotness:
|
feross
added a commit
that referenced
this issue
Mar 17, 2015
This comment has been minimized.
This comment has been minimized.
|
Just published In order to get things like proper detection of used variables inside of JSX, I added eslint-plugin-react. Like with standard@1.0.0, let's start with all React rules enabled and relax them as necessary. Open a new issue if you think a rule is too aggressive. @HenrikJoreteg, note: I noticed an eslint bug that crashes standard while trying to check your demo app. Here's the eslint issue: eslint/eslint#2060 This isn't related to JSX support :) I think this issue can be closed now! |
feross
closed this
Mar 17, 2015
This comment has been minimized.
This comment has been minimized.
|
@Flet thanks for looking into this - looks like we were working in parallel :) |
This comment has been minimized.
This comment has been minimized.
HenrikJoreteg
commented
Mar 17, 2015
This comment has been minimized.
This comment has been minimized.
|
Excellent! Good call on the eslint-plugin-react include :) |
This comment has been minimized.
This comment has been minimized.
|
Just released 3.1.1 to automatically lint files that match |
This comment has been minimized.
This comment has been minimized.
|
@HenrikJoreteg The eslint issue I mentioned (eslint/eslint#2060) is fixed and released now :) |
This comment has been minimized.
This comment has been minimized.
HenrikJoreteg
commented
Mar 18, 2015
|
just noticed that, thanks @feross :) |
This comment has been minimized.
This comment has been minimized.
|
Works for me! Thanks all! |
This comment has been minimized.
This comment has been minimized.
anthonybrown
commented
Aug 21, 2016
|
Works great for my React projects! |
RichardLitt commentedFeb 27, 2015
So, I'm trying to use standard on .jsx files. And I run into an issue where I can't use
//jscs:disableand/* eslint-disable */, because they still depend on the AST parser and will throw an error if they can't parse the JSX templating.Example file:
What do you think about this? I could potentially use
fs.readFileSync(__dirname, '/form-template.jsx')and pipe the rendering jsx template through that, but that seems messy. Do you think there would be a way of using standard on these files, otherwise?