Visual Studio 2015 Enterprise with ReSharper 10 Ul

2019-01-15 11:50发布

问题:

I have Visual Studio 2015 Enterprise, version 14.0.24720.00 Update 1 as well as ReSharper 10 Ultimate, version 10.0.2 installed. I have a typescript file that is using AtScript syntax to refer to the Angular2 directive module, as its annotation. However, ReSharper is stating the following error:

Symbol 'Directive' cannot be properly resolved, probably it is located in inaccessible module.

Below is the full error tooltip.

The application compiles and runs as expected, and the angular portions of the application also function as desired. It appears as though this is a ReSharper false negative. Is anyone familiar with a workaround other that simply disabling ReSharper or ignoring the warning?

回答1:

The issue is simply a bug with the latest version of ReSharper, if you Suspend ReSharper the issue simply goes away and all the source code works as expected.

Update

This has since been addressed in the ReSharper 2016.1 version.



回答2:

As a workaround, if you are using angular2 from your node_modules folder, then you can reference it directly instead of relying on the new node module resolution. For example you can do:

import {Directive} from '../../node_modules/angular2/core';


回答3:

As of 02/2016, the issue is fixed in the ReSharper Ultimate 10.1 EAP 3

this version still has some other typescript issues though

Original answer, explaining why it couldn't work in previous versions:

Had the same setup and same issue. I strongly believe this is related to: "moduleResolution": "node"

https://youtrack.jetbrains.com/oauth?state=%2Fissue%2FRSRP-273158

Unfortunately, no way now. We're working on node.js support for the next ReSharper version.



回答4:

It could be Resharper problem. disable it from tools->option->Resharper Ultimate->General->Suspend Now and the errors will be hide.



回答5:

I was getting the same problem on one of my modules on Resharper 2017.1 in Visual Studio 2017.

But after updating my Resharper to 2017.2.2, that solved the problem.



回答6:

If updating to latest ReSharper version does not work and this only affects .js(x) and .ts(x) files you only need to suspend those. You can do that by going to ReSharper -> Options -> Unclick JavaScript and TypeScript.