2017-11-20 9 views
0

私はthis articleを読んで、アプリケーションでlodashのインポートを最適化することに決めましたが、説明どおりに動作しないようです。Angular2:import lodash.clone only(cherry-pick)

既存のコードされた:

import clone from "lodash/clone"; 
[...] 
let clonedObject = clone(myObject); 
しかし、私は、実行時にこのエラーを得た:

import * as _ from "lodash"; 
[...] 
let clonedObject = _.clone(myObject); 

は、その後、私は試した

ERROR TypeError: clone_1.default is not a function 

だから私は中括弧で試してみました:

import {clone} from "lodash/clone"; 
[...] 
let clonedObject = clone(myObject); 

そして、私が得たこの時間:

ERROR TypeError: clone_1.clone is not a function 

が最後にそれが働い:

import * as clone from "lodash/clone"; 
[...] 
let clonedObject = clone(myObject); 

そしてlodashのウェブサイトのようなものについて話している:

var clone = require('lodash/clone'); 
が何であるかを最終的に

、ロダッシュ関数をインポートするための正確かつ効率的な方法は?

答えて

0

角度2+の場合、この構文はimport * as clone from "lodash/clone";です。 console.log(clone)には、必要な機能cloneのみが表示されます。

var clone = require('lodash/clone');はnodejs用です。

+0

lodash/clone ";"から 'import clone 'がなぜ機能しないのでしょうか? – Darnoj

+0

私は本当に 'export default'を必要としているかどうか、あるいは.jsファイルからエクスポートして.tsファイルにインポートしようとするときに問題があるかもしれないことはまったく分かりません。あなたが答えを見つける場合は私たちも知ってみましょう:) – DrNio