Closed5

Rollupを使ってjsファイルをコンパイルする

GoemonGoemon

Instration

$ npm install --global rollup

Quick Start

$ rollup main.js --file bundle.js --format cjs

このコマンドでmain.jsをエントリポイントとして、bundle.jsの単一ファイルにコンパイルすることができる。

https://rollupjs.org/

GoemonGoemon

Rollup + typescript + Vue2 (+ vue-property-decorator)

Vue2の場合はrollup-plugin-vueのバージョンを"rollup-plugin-vue": "^5.0.0”,にする必要がある

[!] RollupError: Unexpected character '@' (Note that you need plugins to import files that are not JavaScript)
lib/scripts/replay_modal.ts (14:0)
12: // } from '../../../ink-helper/index'
13: import { LOG } from "./Utilities.mjs";
14: @Component({

vue-property-decoratorで利用しているdecoratorの部分でエラーなる

tsconfig.json

{
    // Change this to match your project
    "include": [
        "./lib/**/*",
        "lib/styles/*.scss",
        "lib/scripts/*.ts",
        "lib/scripts/*.mjs",
        "lib/components/*.vue",
        "rollup.config.ts" ⇦ typescriptではここでrollup.config.tsを読み込めるようにする
    ],
     "exclude": [
        "node_modules"
    ],
    "compilerOptions": {
        "moduleResolution": "node",
        "target": "esnext",
        "module": "esnext",
        // Tells TypeScript to read JS files, as
        // normally they are ignored as source files
        "allowJs": true,
        // Generate d.ts files
        "declaration": true,
        // This compiler run should
        // only output d.ts files
        // "allowImportingTsExtensions": true,
        "emitDeclarationOnly": true,
        // Types should go into this directory.
        // Removing this would place the .d.ts files
        // next to the .js files
        "outDir": "dist/",
        // go to js file when using IDE functions like
        // "Go to Definition" in VSCode
        "declarationMap": true,
        "skipLibCheck": true,
        "esModuleInterop": true,
        "baseUrl": ".",
        "types": [
            "node"
        ],
        "resolveJsonModule": true,
        "forceConsistentCasingInFileNames": true,
        "strict": true,
        "experimentalDecorators": true, ⇦これを追加する
    }
}
このスクラップは2023/10/16にクローズされました