Issue
I'm trying to bundle Angular2 modules using Rollup.js. this is my rollup.config.vendor.js file:
import typescript from 'rollup-plugin-typescript2';
import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
export default {
entry: 'vendor.ts',
dest: './Bundle/vendor.js',
format: 'iife',
moduleName: 'vendor',
plugins: [
typescript(),
resolve({
jsnext: true,
main: true,
browser: true
}),
commonjs({
include: 'node_modules/rxjs/**',
}),
]
}
It creates a bundled js, but in the process it keeps printing this kind of message:
The 'this' keyword is equivalent to 'undefined' at the top level of an ES module, and has been rewritten
https://github.com/rollup/rollup/wiki/Troubleshooting#this-is-undefined
node_modules\@angular\forms\@angular\forms.es5.js (1:25)
1: var __extends = (this && this.__extends) || function (d, b) {
^
2: for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
3: function __() { this.constructor = d; }
What does it mean?
Am I doing something wrong or is it the way it's supposed to be?
Solution
You could safely ignore those warnings as explained in the documentation
by adding the onwarn
property to your rollup-config.js
file:
onwarn: function(warning) {
// Skip certain warnings
// should intercept ... but doesn't in some rollup versions
if ( warning.code === 'THIS_IS_UNDEFINED' ) { return; }
// console.warn everything else
console.warn( warning.message );
}
Quote:
It overrides the default onwarn method in order to skip annoying messages about the AOT compiler's use of the this keyword.
Answered By - Darin Dimitrov
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.