2016-02-01 30 views
4

在JS我所需要的節點模塊克(我想ImageMagick的使用,而不是默認的GraphicsMagick工具),同時傳遞一個參數是這樣的:如何在ES6中導入節點模塊傳遞子類參數?

var gm = require('gm').subClass({ imageMagick: true }); 

我如何能做到這一點的ES6?

import gm from "gm"; 
gm.subClass({ imageMagick: true }); 

不起作用,因爲gm默認爲未安裝的GraphicsMagick。從@Felix克林

+1

在你的Node例子中,你將'subClass'的返回值保存到一個變量中。你是否在你的ES6代碼中這樣做? – apsillers

+0

你能詳細說明「它不工作」嗎? –

+0

@FelixKling:它默認爲graphicsMagick,它沒有安裝,因此會記錄'[錯誤:無法執行GraphicsMagick/ImageMagick:gm「convert」「-size」「640x360」「xc:#f9b005」「-fill」「 #ffffff「」-pointsize「」140「」-draw「」重心文本0,0 \「img \」「」/tmp/img.jpg「這很可能意味着無法找到gm/convert二進制文件] ' – r0bs

回答

4

答作品:

import gm from "gm"; 
const im = gm.subClass({ imageMagick: true }); 

...使用im從這裏開始!

+0

這對我有用。謝謝! – mhulse

+0

完美,有完全相同的問題,謝謝:) – csilk

+0

我在AWS lambda中使用gm(通過Typescript/webpack)。似乎給運行時錯誤:'模塊初始化錯誤:TypeError' - 編譯的代碼是這樣的:'const gm_1 = __webpack_require __(17); const IMAGEMAGICK = gm_1.default.subClass({imageMagick:true});'。很奇怪,會繼續調查。 –