Comments (6)
But would this suffice?
It seems not, if we try to pass none Function values in the oClassInfo
we would now get an error.
Additionally if we try to expend the Record's value type above | any
, | unknown
we no longer get an error but we seem to lose the content assist and validation functionality of the types (at least in Jetbrains).
from ui5-typescript.
We may need use the less detailed (or useful):
oClassInfo?: any
from ui5-typescript.
It seems that being verbose and specifying all possible types may be a possible solution:
Record<string, ((this:sap.ui.core.mvc.Controller, ...args: any[]) => any) | object | number | string | RegExp | ...>
from ui5-typescript.
It seems object
covers string
and RegExp
so perhaps only | object | number
would be needed?
from ui5-typescript.
newly added properties on oClassInfo
do not seem to be accessible via the this with the current solution.
In other words, only properties arriving from the parent class are accessible with this solution.
from ui5-typescript.
There seems to be a utility to give hints for the contextual "this" type. This enables a much simpler solution:
- Add generic type to
extend
method. C & ThisType<C & [FullClassName]>
- e.g:
C & ThisType<C & sap.ui.core.mvc.Controller>
from ui5-typescript.
Related Issues (20)
- Issue with SelectionController taking sId as mSettings HOT 1
- How to create a typed view in SAP UI5 typescript HOT 1
- Missing type definition for `sap.m.table.ColumnWidthController` HOT 4
- Wrong source type for generated type ODataModel$DataReceivedEvent HOT 1
- [ts-interface-generator] Provide a way to annotate control properties with a TS type (which might be narrower than the UI5 one)
- [ts-interface-generator] Check what happens when overridden setters and getters narrow down the type of a property
- @deprecated tag in TS Definitions should be on the last position HOT 2
- [ts-interface-generator] Interface for ManagedObject based Class Instances
- [ts-interface-generator] Generate fully qualified module names in interface for seamless use with tsc declarations
- Productive use vs. undefined support status. HOT 3
- @sapui5/types 1.121.1, 1.121.2(?) and 1.122.1: 'JQuery' only refers to a type, but is used as namespace here. HOT 1
- Regression in @sapui5/types of 1.122.1 with tsconfig for wdi5 HOT 5
- Possible issue: too many classes are abstract? HOT 5
- `@sapui5/ts-types-esm` - `sap/ui/core/Core` is incorrectly exported as an instance instead of a class HOT 1
- i can't find a way to use typescript and the flp sandbox launchpad HOT 3
- Missing types for sap.ui.qunit.utils.nextUIUpdate and waitForThemeApplied HOT 8
- Folder structure of @sapui5/types is wrong HOT 7
- Error creating Singleton instance of sap.ushell.Container in SAPUI5 1.120.12 with TypeScript HOT 9
- Type 'import("sap/ui/core/Popup").Dock' is not assignable to type 'typeof Dock' (since UI5 1.115.0) HOT 1
- Typed Views with TS Seem Impossible HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ui5-typescript.