Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Export ES module #44

Merged
merged 1 commit into from
Oct 29, 2020
Merged

Export ES module #44

merged 1 commit into from
Oct 29, 2020

Conversation

rosylilly
Copy link
Contributor

package.json に定義されている module の向き先を dist/sora.mjs に変更し、対象ファイルがビルドされるよう Rollup の設定を追加しました。

Rollup の設定を変更し、 ES Module を出力するようにしています。 sora.tsexport default が設定されているのに ES Module として読み込んだ際に実際には default に出力されていない、といった問題を解決します。

Pros:

  • TypeScript や ES Module として読み込む際 import * as Sora と書かず、 import Sora あるいは import { connection, version } と書けるようになります。
  • 一部の環境(webpack / ts-loader / babel-loader)の組み合わせでビルドが壊れる問題を解決します。
  • 従来の dist/sora.min.jsdist/sora.js の機能に変更はありません。

Cons:

  • 現状、あえて sora-js-sdk を commonjs から ES Module に変換するようなコードを入れている場合は削除が必要です。
  • webpack や Rollup の設定によっては module ではなく maindist/sora.min.js が参照されるため、ES Module として読み込むためには適切な設定を導入して頂く必要があります。
  • dist/sora.mjs はビルドツールから呼び出される前提で minimize を行っていません。ビルドサイズを小さくしたい場合は適切な minimize を導入してください。

@voluntas
Copy link
Member

素敵な PR ありがとうございます。マージします。

@voluntas voluntas merged commit 30a1643 into shiguredo:develop Oct 29, 2020
@rosylilly rosylilly deleted the es-module branch December 7, 2020 05:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants