Closed 4nderss closed 7 years ago
I will investigate.
Have a look here: https://github.com/MeirionHughes/aurelia-template-lint/commit/74f346297a7c4f2c294a9e9f025269298b0c8c3e Are you doing anything differently, because that test case works.
This is our exact case:
list.ts
@autoinject()
export class List extends BaseList {
constructor(
router: Router, taskQueue: TaskQueue) {
super(router, taskQueue);
}
baselist.ts
export class BaseList {
constructor(
public router: Router,
public taskQueue: TaskQueue) { }
}
list.html
<button class="pl-button green block" click.trigger="router.navigateToRoute('new-doseprescription')" tabindex="10">Ny ordination</button>
result:
~try constructor(public router: Router.... )
it won't be elevated to a class property without public/protected/private
~
I see the issue; its public on the base class, but not the main class; current code doesn't traverse into base classes for that. should be fixable.
Because it is public inside the base class wouldn't that make it a duplicate identifier and override the router declared inside baselist.ts ?
yeah your code is fine; I just need to make the constructor lookup traverse into base classes to find what public fields are declared there too.
Perfecto :)
By the way props on your work, this is helping us alot!
try 0.9.21
Works, thanks!
I'm using 0.9.23
and its not finding a property on my base class. Could this be due to generics?
export class FileDataSource extends BaseDataSource<MemoryStorageMap> {
I saw the #68 but in my case I am not using an interface. I am using a base class and I get warnings for my properties declared in my base class.
Example
I get warnings for sharedValue
WARNING: cannot find 'sharedValue' in type 'ExtendedItem'
Or am I missing something?
Using latest version