I’m in the process of trying to switch to ES-modules for a common library that is used by my Angular application.
package com.mydomain.myproj.common
@JsExport
object GlobalConstants {
const val VERSION = "0.64.0"
}
I previously accessed such transpiled code like this:
import * as myproj_top from "myproj";
import myproj_common = myproj_top.com.mydomain.myproj.common;
import GlobalConstants = myproj_common.GlobalConstants;
Ugly, but it works, and I could use it in my code like GlobalConstants.VERSION
to get the value.
With useEsModules()
, I don’t have to go through all those import hoops. This works as expected:
import { GlobalConstants } from "myproj";
However, I cannot use that imported object the same way. Instead of GlobalConstants.VERSION
, it seems I need to write GlobalConstants.getInstance().VERSION
.
Is this expected or am I just missing something obvious?