2017-12-26 21 views
0

rollupを使用してプロジェクトをバンドルしています。エラー "バージョン"はロールアップを使用して構築する際に必要な引数です

最初はすべて正常に動作していましたが、私の設定で何が変更されたのか分かりません。rollup -cを実行するとこのエラーが発生しました。

[!] Error: "version" is a required argument. 
Error: "version" is a required argument. 
    at Object.getArg (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:14625:11) 
    at SourceMapConsumer$1.BasicSourceMapConsumer (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:15763:22) 
    at new SourceMapConsumer$1 (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:15491:7) 
    at Module.getOriginalLocation (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:16925:16) 
    at Module.error (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:16942:26) 
    at CallExpression.bindNode (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:12326:17) 
    at CallExpression.bind (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:11415:8) 
    at eachChild.child (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:11433:34) 
    at keys.forEach.key (/home/programmersedge/.nvm/versions/node/v6.11.1/lib/node_modules/rollup/dist/rollup.js:11450:5) 
    at Array.forEach (native) 

は、ここで私はversion引数が私のセットアップ や私の設定が間違って何 に行くべき場所を把握することはできませんよ、私のrollup.config.js

import resolve  from 'rollup-plugin-node-resolve' 
import babel  from 'rollup-plugin-babel' 
import filesize  from 'rollup-plugin-filesize' 
import typescript from 'rollup-plugin-typescript2' 
import commonjs  from 'rollup-plugin-commonjs' 
import postcss  from 'rollup-plugin-postcss-modules' 
import autoprefixer from 'autoprefixer' 
import sass   from "node-sass" 

const preprocessor = (content, id) => new Promise((resolve, reject) => { 
    sass.render({ 
     file: id, 
     sourceMap: "string", 
     sourceComments: true, 
     sourceMapContents: true, 
     outputStyle: "compressed" 
    },(err, result) => { 
     if (err) { 
      return reject(err); 
     } 
     resolve({code: result.css.toString()}); 
    }); 
}); 

export default { 
    input: 'src/index.ts', 
    output: { 
     file: 'lib/index.js', 
     format: 'umd', 
     globals: { 
      ... 
     }, 
     sourcemap: true, 
    }, 
    external: [ 
     ... 
    ], 
    plugins: [ 
     resolve(), 
     postcss({ 
      preprocessor, 
      plugins: [ 
       autoprefixer(), 
      ], 
      extensions: ['.scss'], 
      writeDefinitions: true, 
      postcssModulesOptions: { 
       generateScopedName: '[name]__[local]___[hash:base64:5]' 
      } 
     }), 
     typescript({ 
      tsconfigOverride: { 
       compilerOptions: { 
        declaration: true, 
        moduleResolution: "node" 
       } 
      }, 
      rollupCommonJSResolveHack: true, 
      abortOnError: false, 
      typescript: require('typescript'), 
     }), 
     commonjs(), 
     babel({ 
      exclude: 'node_modules/**' 
     }), 
     filesize() 
    ], 
    watch: { 
     include: 'src/**' 
    } 
    }; 

です。誰でもここで私を助けることができますか?

答えて

1

とにかく問題を修正しました。ここで

問題

報告されたエラーの説明が別のエラーを報告する際、ソース マップを使用しようとしたときに発生するエラーです。実際に発生するエラーは (おそらくCANNOT_CALL_NAMESPACE)です。これは私が理解している通り、 あなたがインポートでバインドした変数を呼び出そうとしていることを意味します。

ここにはGitHub Issueがあります。このに遭遇した人のため

+0

問題をどのように修正したかを示す答えを拡大できますか?私は同じことを打ちました。私はそれらを使い始めるわけではないので、ソースマップをどこで消すかはわかりません。 –

+0

@TomášHübelbauer確かに...私はあなたがいくつかのパッケージのデフォルトのインポートをしようとしていると思います...しかし、デフォルトのインポートはありませんので、&からモジュールとしてimport *しようとしてください;パッケージ& "私は**クラス名**パッケージを使って問題を抱えていました。この問題を解決するには、まだ問題が残っていれば、 'classnames'から' classnames'の代わりに 'classnames'のクラス名としてimport *を実行しなければなりませんでした。 – besrabasant

+0

[qrcode-generator](https://github.com/kazuhikoarase/qrcode-generator/blob/master/js/qrcode.d.ts)でロールアップを使用できるかどうか確認してください。 InTypeScript私は 'qrcode-genrator'からqrcodeとしてimport *と言うことができます。 'import qrcode from' qrcode-generator''は型ごとではありませんが、Rollupとrollup-plugin-typescript2を使用しています。 '*'バリアント。 –

1

、PRを修正して開い今そこにある:

https://github.com/rollup/rollup/pull/2012

また、これが固定されると、多くの人々のために、それは本当の問題を明らかにする:は呼び出すことはできません名前空間

私は its own Rollup issueにそのための修正を発見した(活字体で発生します):直接 tscを実行していないとき、ロールアップを通じて活字体を使用した場合

import * as something_ from 'something'; 
const something: typeof something_ = something; 
// Now you can use `soemthing` as usual 

にのみ発生します。

関連する問題