Mac OSX El Capitan
angular-cli: 1.0.0-beta.8
, node: 6.2.0
, os: darwin x64
I tried to add lodash
library in angular-cli project:
npm install --save lodash
typings install lodash --global --save
Successfully installed in node_modules
. 👍
system-config.ts:
/** Map relative paths to URLs. */
const map: any = {
'lodash': 'vendor/lodash',
};
/** User packages configuration. */
const packages: any = {
'lodash': {
format: 'cjs',
defaultExtension: 'js',
main: 'core.js'
}
};
angular-cli-build.js
var Angular2App = require('angular-cli/lib/broccoli/angular2-app');
module.exports = function(defaults) {
return new Angular2App(defaults, {
vendorNpmFiles: [
'systemjs/dist/system-polyfills.js',
'systemjs/dist/system.src.js',
'zone.js/dist/**/*.+(js|js.map)',
'es6-shim/es6-shim.js',
'reflect-metadata/**/*.+(ts|js|js.map)',
'rxjs/**/*.+(js|js.map)',
'@angular/**/*.+(js|js.map)',
'lodash/**/*.+(js|js.map)'
]
});
};
And then I tried to import in a service in different ways:
import { chunk, intersection, zip } from 'lodash';
Error: Cannot find module 'lodash'
declare var _;
const {chunk, intersection, zip} = _;
Error: Cannot find name 'chunk'
Cannot find name 'intersection'
Cannot find name 'zip'
I don't found the way to use lodash
...
I did something wrong? I miss something? Is there an issue?
Thank you very much,
Aral.
The error "could not find a declaration file for module 'lodash'" occurs when TypeScript cannot find the type declaration for a lodash-related module. To solve the error install the types for the module by running the command from the error message, e.g. npm install -D @types/lodash .
Lodash is a JavaScript library that provides utility functions for common programming tasks using a functional programming paradigm; it builds upon the older underscore. js library. Lodash has several built-in utility functions that make coding in JavaScript easier and cleaner.
Using your command line, install Lodash in your project folder. And then import it at the top of your JavaScript file in which you would like to use it. You're ready to use Lodash! You can now access all of Lodash's functions inside the “_” object.
Lodash version const _ = require("lodash"); const ver = _. VERSION; console. log(ver); The example prints the version of the Lodash library.
Change system-config.ts
to:
const map: any = {
'lodash': 'vendor/lodash',
};
const packages: any = {
'lodash': {
format: 'cjs',
defaultExtension: 'js',
main: 'index.js'
}
};
And then import it as:
import 'lodash';
declare var _;
Finally use it as:
_.chunk();
@codef0rmer answer is good, but if you want specific lodash
dependencies and not the whole library, here is an answer with example on how to do that: https://stackoverflow.com/a/38317093/1426570
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With