Agenda
現象
ts-nodeで実行するために@solana/spl-tokenをimportしてトークン発行しようとしたところ、エラーになる。
Module '"@solana/spl-token"' has no exported member 'mintTo'.
エラーの該当箇所
import { createMint, getOrCreateAssociatedTokenAccount, mintTo, transfer } from '@solana/spl-token';
なお、node_modulesを直接見ると、ちゃんとファイルが存在していて、export constで外部から読み込めるようになっている。
原因
原因わからず。以下を試したが改善されなかった。
- npm cache clean
- npmの再インストール(node_modulesとpackage-lock.jsonの削除)
- tsconfig.jsonに「"skipLibCheck": true」を記述
- npm add tsconfig-paths
対応
以下2とおりの方法で暫定回避(根本的な解決はできていないため、あくまでエラーを放置する対応)。
案1
@ts-ignoreで強引に無視する。
// @ts-ignore
import { createMint, getOrCreateAssociatedTokenAccount, mintTo, transfer } from '@solana/spl-token';
案2
tsconfig.jsonファイル自体を削除する。