When trying to enable both es_modules and node plugin together, jump to definition query wont work, but completions requests work if a file is imported without specifying .js extension as described below.
Jump to definition fails in ternjs demo site as well https://ternjs.net/doc/demo/index.html#ES6 if the init for the demo includes node: true, along with the current tern init options in demo.
The issue can be recreated with three files below, fail.js, pass.js and list.js with contents below:
// fail.js
import {test} from "./list"
// pass.js
import {test} from "./list.js"
// list.js
export function test(){}
The problem:
Jump to definition tern query will not work if we try to trigger it from line1: test in fail.js, but it will work from pass.js .
However, completions requests pass for both cases to get code hints.
The problem is not present if i only use es_modules plugin and not node plugin.
expected result
Jump to definition query and completions query should behave the same. But having completions and definitions error tolerant would help with edits.
Should behave consistently with both es_modules plugin and node plugin enabled.
Hi,
When trying to enable both
es_modules
andnode
plugin together, jump todefinition
query wont work, butcompletions
requests work if a file is imported without specifying.js
extension as described below.We have the following tern init code in Brackets:
Jump to definition fails in ternjs demo site as well https://ternjs.net/doc/demo/index.html#ES6 if the init for the demo includes
node: true,
along with the current tern init options in demo.The issue can be recreated with three files below,
fail.js
,pass.js
andlist.js
with contents below:The problem:
definition
tern query will not work if we try to trigger it from line1:test
infail.js
, but it will work frompass.js
.completions
requests pass for both cases to get code hints.es_modules
plugin and notnode
plugin.expected result
definition
query andcompletions
query should behave the same. But having completions and definitions error tolerant would help with edits.es_modules
plugin andnode
plugin enabled.Background reading done
https://stackoverflow.com/questions/55251956/how-does-javascript-import-find-the-module-without-an-extension
Thanks, Arun.