atom-node-resolver icon indicating copy to clipboard operation
atom-node-resolver copied to clipboard

Unable to open files from scripts having JSX

Open techgyani opened this issue 10 years ago • 3 comments

[Enter steps to reproduce below:]

  1. Open any file having jsx tag and node require statement.
  2. Select the require statement and press ctrl+alt+o

Below is the error stack trace :

Atom Version: 0.177.0 System: linux 3.16.0-30-generic Thrown From: node-resolver package, v1.0.1

Stack Trace

Uncaught Error: Line 5: Unexpected token <

At /home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3719

Error: Line 5: Unexpected token <
  at throwError (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:1831:21)
  at throwUnexpected (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:1889:9)
  at parsePrimaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2203:13)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2278:61)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2385:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseArguments (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2218:27)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2285:24)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2353:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2586:16)
  at parseStatement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3249:16)
  at parseSourceElement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3490:20)
  at parseFunctionSourceElements (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3319:29)
  at parseFunctionExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3462:16)
  at parsePrimaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2179:24)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2278:61)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2385:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseArguments (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2218:27)
  at parseLeftHandSideExpressionAllowCall (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2285:24)
  at parsePostfixExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2326:16)
  at parseUnaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2353:20)
  at parseBinaryExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2474:16)
  at parseConditionalExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2534:16)
  at parseAssignmentExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2560:23)
  at parseExpression (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:2586:16)
  at parseStatement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3249:16)
  at parseSourceElement (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3490:20)
  at parseSourceElements (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3523:29)
  at parseProgram (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3541:16)
  at Object.parse (/home/bhupendra/.atom/packages/node-resolver/node_modules/esprima/esprima.js:3707:23)
  at atom-workspace.<anonymous> (/home/bhupendra/.atom/packages/node-resolver/index.js:18:23)
  at atom-workspace.handler (/usr/share/atom/resources/app/src/space-pen-extensions.js:115:32)
  at atom-workspace.jQuery.event.dispatch (/usr/share/atom/resources/app/node_modules/space-pen/vendor/jquery.js:4681:9)
  at atom-workspace.elemData.handle (/usr/share/atom/resources/app/node_modules/space-pen/vendor/jquery.js:4359:46)
  at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app/src/command-registry.js:243:29)
  at /usr/share/atom/resources/app/src/command-registry.js:3:61
  at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:558:16)
  at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:396:22)
  at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app/src/window-event-handler.js:170:20)

Commands

 17x -39:54.7 core:move-down (atom-text-editor.editor)
     -39:44.8 core:save (atom-text-editor.editor)
     -37:00.9 core:backspace (atom-text-editor.editor.mini)
     -36:59.9 core:confirm (atom-text-editor.editor.mini)
 15x -36:21.7 core:backspace (atom-text-editor.editor.mini)
     -36:18.7 core:confirm (atom-text-editor.editor.mini)
 11x -36:06.1 core:backspace (atom-text-editor.editor.mini)
     -36:02.4 core:confirm (atom-text-editor.editor.mini)
 23x -33:40.9 core:backspace (atom-text-editor.editor.mini)
     -32:48.5 core:confirm (atom-text-editor.editor.mini)
  3x -32:47.4 core:backspace (atom-text-editor.editor.mini)
     -32:45.7 core:confirm (atom-text-editor.editor.mini)
     -30:16.4 application:open-your-keymap (atom-workspace.workspace.scrollbars-visible-always.theme-atom-dark-syntax.theme-atom-dark-ui)
     -30:10.5 core:paste (atom-text-editor.editor)
     -30:09.4 core:save (atom-text-editor.editor)
     -30:00.9 node-resolver:open-selected-dependencies (atom-text-editor.editor.is-focused)

Config

{
  "core": {
    "themes": [
      "atom-dark-ui",
      "atom-dark-syntax"
    ]
  }
}

Installed Packages

# User
jshint, v1.2.0
node-resolver, v1.0.1
react, v0.9.8

# Dev
No dev packages

/cc @atom/core

techgyani avatar Feb 08 '15 07:02 techgyani

+1

farism avatar Feb 08 '15 20:02 farism

Hi,

Having the same problem with ES6 code. This plugin relies on esprima, It doesn't support JSX. Facebook forked esprima to add JSX support. It might be worth switching.

Cheers, Charlie

charliedowler avatar Feb 09 '15 20:02 charliedowler

+1

evindor avatar Feb 26 '15 13:02 evindor