打包功能可用

This commit is contained in:
zhcnyuyang 2025-06-29 00:03:28 +08:00
parent fca6b6d185
commit 7864aa4f74
2 changed files with 27 additions and 27 deletions

View File

@ -25,16 +25,17 @@
"@nanostores/i18n": "^1.0.1", "@nanostores/i18n": "^1.0.1",
"axios": "^1.10.0", "axios": "^1.10.0",
"bulma": "^1.0.4", "bulma": "^1.0.4",
"nanostores": "^1.0.1" "nanostores": "^1.0.1",
"tslib": "^2.8.1"
}, },
"devDependencies": { "devDependencies": {
"@rollup/plugin-typescript": "^12.1.3", "@rollup/plugin-terser": "^0.4.4",
"@rollup/plugin-typescript": "^8.3.0",
"postcss": "^8.5.6", "postcss": "^8.5.6",
"rollup": "^4.44.0", "rollup": "^2.79.1",
"rollup-plugin-postcss": "^4.0.2", "rollup-plugin-postcss": "^4.0.2",
"sass": "^1.89.2", "sass": "^1.89.2",
"terser": "^5.43.1", "terser": "^5.43.1",
"typescript": "^5.8.3" "typescript": "^5.8.3"
}, }
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
} }

View File

@ -1,89 +1,88 @@
import typescript from '@rollup/plugin-typescript'; import typescript from '@rollup/plugin-typescript';
import postcss from 'rollup-plugin-postcss'; import postcss from 'rollup-plugin-postcss';
import { terser } from 'terser'; import terser from '@rollup/plugin-terser';
const input = 'src/index.ts'; const input = 'src/index.ts';
const outputDir = 'dist'; const outputDir = 'dist';
export default [ export default [
// ESM // ESM 单文件输出
{ {
input, input: input,
output: { output: {
file: `${outputDir}/post.esm.js`, file: `${outputDir}/post.esm.js`,
format: 'esm', format: 'esm',
sourcemap: true, sourcemap: true
}, },
plugins: [ plugins: [
typescript(), typescript(),
postcss({ postcss({
extract: true, inject: true,
minimize: true, minimize: true,
use: [ use: [
['sass', { includePaths: ['./src/styles'] }] ['sass', { includePaths: ['./src/styles'] }]
] ]
}) })
], ],
external: [], // 所有依赖都内置 external: []
}, },
// CJS // CJS 单文件输出
{ {
input, input: input,
output: { output: {
file: `${outputDir}/postjs.cjs.js`, file: `${outputDir}/postjs.cjs.js`,
format: 'cjs', format: 'cjs',
sourcemap: true, sourcemap: true,
exports: 'default', exports: 'default'
}, },
plugins: [ plugins: [
typescript(), typescript(),
postcss({ postcss({
extract: true, inject: true,
minimize: true, minimize: true,
use: [ use: [
['sass', { includePaths: ['./src/styles'] }] ['sass', { includePaths: ['./src/styles'] }]
] ]
}) })
], ],
external: [], external: []
}, },
// UMD // UMD 未压缩(单文件,含样式)
{ {
input, input: input,
output: { output: {
file: `${outputDir}/post.js`, file: `${outputDir}/post.js`,
format: 'umd', format: 'umd',
name: 'postjs', name: 'postjs',
sourcemap: true, sourcemap: true,
exports: 'default', exports: 'default'
}, },
plugins: [ plugins: [
typescript(), typescript(),
postcss({ postcss({
extract: true, inject: true,
minimize: true, minimize: true,
use: [ use: [
['sass', { includePaths: ['./src/styles'] }] ['sass', { includePaths: ['./src/styles'] }]
] ]
}) })
], ],
external: [], external: []
}, },
// UMD minified // UMD 压缩版(单文件,含样式)
{ {
input, input: input,
output: { output: {
file: `${outputDir}/post.min.js`, file: `${outputDir}/post.min.js`,
format: 'umd', format: 'umd',
name: 'postjs', name: 'postjs',
sourcemap: true, sourcemap: true,
exports: 'default', exports: 'default'
plugins: [terser()],
}, },
plugins: [ plugins: [
typescript(), typescript(),
postcss({ postcss({
extract: true, inject: true,
minimize: true, minimize: true,
use: [ use: [
['sass', { includePaths: ['./src/styles'] }] ['sass', { includePaths: ['./src/styles'] }]
@ -91,6 +90,6 @@ export default [
}), }),
terser() terser()
], ],
external: [], external: []
} }
]; ];