Skip to content

JSImportAttribute for easier invocation of JS APIs from C# #90

@jasongin

Description

@jasongin

This issue tracks the idea of introducing a new JSImportAttribute type to the library, with associated source-generator support.

When [JSImport] is applied to a C# static partial method, the generated code will load a reference to the JS function (named in an attribute parameter) and marshal the parameters and return value.

Importing entire JS classes could also be supported, with more effort: When [JSImport] is applied to a C# partial class, the generated code will include a constructor that constructs an instance of the JS type (named in an attribute parameter), and implementations of all methods to marshal parameters and return values.

This could even be extended to reading TypeScript type-definitions, eliminating some of the need to declare all of the API surface in C#.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

📋 Backlog

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions