我在PhpStorm中有一个Angular 7应用程序,通过ctrl单击解析模板可用于所有内容(诸如ngIf,自定义组件标签或管道之类的特定于Angular的属性),但不适用于局部变量。
例如,我有这个组件:
import { Component } from '@angular/core';
Component({
selector: 'test-component',
templateUrl: './test.component.html'
});
export class TestComponent {
public list: string[];
}
使用此模板:
<ng-container *ngFor="let x of list">
Hello {{x}}
</ng-container>
我可以ctrl单击导入的模块@angular/core
转到定义,ctrl单击*ngFor
跳转到声明文件,单击{{x}}
跳转到* ngFor / let等。但是我无法单击list
跳到.ts文件中的声明。它还以红色显示,并带有“未解决的变量或类型”注释。
我安装了node_modules,它是项目的一部分,没有被排除。除模板变量外,所有Typescript和Angular自动完成等均可。
PhpStorm是2019.2.3,已安装并配置了Angular插件。我已经尝试过使缓存无效,重新索引并重新启动。
答案 0 :(得分:1)
结果是我将.html扩展名分配给了PHP(因为我在项目中有很多旧文件)。奇怪的是,除模板变量外,所有Angular完成机制都起作用。在“文件类型”区域中将.html分配给Angular可以解决此问题。