You need to create the systemjs.config.js file and load it from index.html, like a regular script:
<script src="systemjs.config.js"></script>
Make sure you also enable System.JS before configuring the script:
<script src="node_modules/systemjs/dist/system.src.js"></script>
The following script loads the first module:
System.import('app').catch(function (err) { console.error(err); });
By default (according to your system js.config.js), SystemJS will look for app.js or app / main.js.
In the systemjs.config.js file, you want to map the node package to a path where index.js or package.json is, which indicates where the module is located. The module should be compatible with your module loader that you intend to use: AMD, UMD, CommonJS, SystemJS, es6, etc.
In the systemjs.config.js file, the following should work:
'paths': { 'npm:':'node_modules/' }, 'map': { 'ng2-datetime-picker': 'npm:ng2-datetime-picker' ... }, 'packages': { 'ng2-datetime-picker': 'dist/ng2-datetime-picker.umd.js' }
Or you can directly map the UMD file:
'paths': { 'npm:':'node_modules/' }, 'map': { 'ng2-datetime-picker': 'npm:ng2-datetime-picker/dist/ng2-datetime-picker.umd.js' ... }
The following will only work with CommonJS / AMD / SystemJS, since index.js uses the syntax "require":
'paths': { 'npm:':'node_modules/' }, 'map': { 'ng2-datetime-picker': 'npm:ng2-datetime-picker' ... }, 'packages': { 'ng2-datetime-picker': 'dist/index.js' }
EDIT
This should work:
// packages tells the System loader how to load when no filename and/or no extension packages: { app: { main: 'boot.js', defaultExtension: 'js' }, rxjs: { defaultExtension: 'js' }, 'ng2-datetime-picker': { main: 'dist/ng2-datetime-picker.umd.js', defaultExtension: 'js' } }