Skip to content

Commit e711495

Browse files
authored
docs: add multiple entries lib mode example (#1616)
resolve #1614 vitejs/vite@7338ee3 の反映です。
1 parent 9cd797b commit e711495

File tree

1 file changed

+40
-6
lines changed

1 file changed

+40
-6
lines changed

guide/build.md

Lines changed: 40 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -131,14 +131,15 @@ HTML ファイルの場合、Vite は `rollupOptions.input` オブジェクト
131131

132132
配布のためにライブラリーをバンドルするときには [`build.lib` 設定オプション](/config/build-options.md#build-lib) を使用します。また、ライブラリーにバンドルしたくない依存関係、例えば `vue``react` などは必ず外部化してください:
133133

134-
```js twoslash [vite.config.js]
134+
::: code-group
135+
136+
```js twoslash [vite.config.js(単一エントリー)]
135137
import { resolve } from 'path'
136138
import { defineConfig } from 'vite'
137139

138140
export default defineConfig({
139141
build: {
140142
lib: {
141-
// 複数のエントリーポイントのディクショナリや配列にもできます
142143
entry: resolve(__dirname, 'lib/main.js'),
143144
name: 'MyLib',
144145
// 適切な拡張子が追加されます
@@ -160,6 +161,37 @@ export default defineConfig({
160161
})
161162
```
162163

164+
```js twoslash [vite.config.js(複数エントリー)]
165+
import { resolve } from 'path'
166+
import { defineConfig } from 'vite'
167+
168+
export default defineConfig({
169+
build: {
170+
lib: {
171+
entry: {
172+
'my-lib': resolve(__dirname, 'lib/main.js'),
173+
secondary: resolve(__dirname, 'lib/secondary.js'),
174+
},
175+
name: 'MyLib',
176+
},
177+
rollupOptions: {
178+
// ライブラリーにバンドルされるべきではない依存関係を
179+
// 外部化するようにします
180+
external: ['vue'],
181+
output: {
182+
// 外部化された依存関係のために UMD のビルドで使用する
183+
// グローバル変数を提供します
184+
globals: {
185+
vue: 'Vue',
186+
},
187+
},
188+
},
189+
},
190+
})
191+
```
192+
193+
:::
194+
163195
エントリーファイルには、パッケージのユーザーがインポートできるエクスポートが含まれることになります:
164196

165197
```js [lib/main.js]
@@ -179,7 +211,9 @@ dist/my-lib.umd.cjs 0.30 kB / gzip: 0.16 kB
179211

180212
ライブラリーに推奨される `package.json`:
181213

182-
```json [package.json]
214+
::: code-group
215+
216+
```json [package.json(単一エントリー)]
183217
{
184218
"name": "my-lib",
185219
"type": "module",
@@ -195,9 +229,7 @@ dist/my-lib.umd.cjs 0.30 kB / gzip: 0.16 kB
195229
}
196230
```
197231

198-
あるいは、複数のエントリーポイントを公開する場合:
199-
200-
```json [package.json]
232+
```json [package.json(複数エントリー)]
201233
{
202234
"name": "my-lib",
203235
"type": "module",
@@ -217,6 +249,8 @@ dist/my-lib.umd.cjs 0.30 kB / gzip: 0.16 kB
217249
}
218250
```
219251

252+
:::
253+
220254
::: tip ファイル拡張子
221255
`package.json``"type": "module"` を含まない場合、Vite は Node.js の互換性のため異なるファイル拡張子を生成します。`.js``.mjs` に、`.cjs``.js` になります。
222256
:::

0 commit comments

Comments
 (0)