2016-09-29 13 views
2

これは以前から働いていましたが、プロジェクトを[email protected]に変更し、新しいrollupes2015のバンドル/モジュールを変更しました。私はlodashを正しく取得することができません。Typescript `lodash`を` es2015`モジュールでインポートしますか?

lodashがありますが、間違った場所に - 私は必要な方法は

npm install lodash --save 
npm install @types/lodash --save-dev --save-exact 

javascriptの

import * as _ from "lodash"; 
console.log(Object.keys(_)) // ["default", "__moduleExports"] 
console.log(_.default.VERSION) // 4.16.2 

は何が起こっている手順_.default

NPMにいますか?

更新

import _ from "lodash"; // imports as lodash, not _ 

// Chrome debugger console: 
console.log(_)  // VM2037:1 Uncaught ReferenceError: _ is not defined(…) 
console.log(lodash) // function 
console.log(Object.keys(lodash)) // returns: VM2075:1 ["templateSettings", "after", "ary", "assign", ...] 

更新2

は、多分それはクロームデバッガ+ロールアップで何か?私はimport _ from "lodash";に私のコードを変更し、それが正常に動作します - デバッガコンソールを除いて...

console.log(">>> _.keys(_): " + _.keys(_).slice(10, 20)); 
    // >>> _.keys(_): bindAll,bindKey,castArray,chain,chunk,compact,concat,cond,conforms,constant 
    // and the _.sortBy() below works fine 
    var sorted = _.sortBy(photos, function (o) { 
     return o[sort.key]; 
    }); 

    // BUT, in the Chrome debugger (at breakpoint) 
    console.log(_)  // VM2037:1 Uncaught ReferenceError: _ is not defined(…) 

、実際に、私はmain.jsではなく、ソースマップを見ると、私は木揺れの兆しを参照してください(?):問題は、あなたの中にimport * asを使用していることである私の問題は、クロームのデバッグコンソールであるが、私はそれに対処する方法がわからないんだけど...

+0

'VM1912:1キャッチされないにReferenceError:代わりにlodash-esパッケージをインストールし、それをインポートしようVERSIONは(...)定義されていません' – michael

答えて

0

よう

 console.log(">>> _.keys(_): " + lodash.keys(lodash).slice(10, 20)); 
     var sorted = lodash.sortBy(photos, function (o) { 
      return o[sort.key]; 
     }); 

に思えますインポート。これはをデフォルト値のに選択しません。代わりにデフォルト値をインポートします

使用構文:

import _ from "lodash" 

Here is a link to the documentation

ロールアップの試みはにstaticインポートを使用してバンドルを木振るようです。したがって、ES6であるlodash依存関係も必要です。

import _ from "lodash-es" 
+0

わずかに優れている、それは 'lodash''としてlodash'輸入ではなく、 '_' – michael

+0

lodashを' _'としてインポートする必要があります。コードを表示できますか? –

+0

@michael非常に奇妙です!私はロールアップに精通していませんが、 '_'を' lodash.default'に確実にバインドする必要があります。非常に奇妙な。 –

関連する問題