-
Notifications
You must be signed in to change notification settings - Fork 11.9k
Closed
Description
- OS? Ubuntu Linux 14.04.4 LTS
- Versions.
angular-cli: 1.0.0-beta.5
node: 5.10.1
os: linux x64
Repro steps.
ng new angular-cli-primeng-issue && cd angular-cli-primeng-issue
npm install primeng --save
npm install primeui --save
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/**/*.+(js|js.map)',
'rxjs/**/*.+(js|js.map)',
'@angular/**/*.+(js|js.map)',
'primeng/**/*.+(js|js.map)',
'primeui/**/*'
]
});
};
src/system-config.ts
const map: any = {
'primeng': 'vendor/primeng'
};
/** User packages configuration. */
const packages: any = {
'primeng': { defaultExtension: 'js' }
};
...
src/index.html
...
<script src="vendor/primeui/primeui-ng-all.min.js"></script>
...
The failure
$ ng build && ls dist/vendor/primeui/primeui-ng-all.min.js
[...build...]
dist/vendor/primeui/primeui-ng-all.min.js
$ ng build -prod && ls dist/vendor/primeui/primeui-ng-all.min.js
[...build...]
dist/vendor/primeui/primeui-ng-all.min.js NOT FOUND
Mention any other details that might be useful.
The solution I have found is
- do not include script from src/index.html
- define the polyfills option to AngularApp in 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/**/*.+(js|js.map)',
'rxjs/**/*.+(js|js.map)',
'@angular/**/*.+(js|js.map)',
'primeng/**/*.+(js|js.map)',
'primeui/**/*'
],
polyfills: [
'vendor/es6-shim/es6-shim.js',
'vendor/reflect-metadata/Reflect.js',
'vendor/systemjs/dist/system.src.js',
'vendor/zone.js/dist/zone.js',
'vendor/primeui/primeui-ng-all.min.js'
]
});
};
Questions
- Is it the preconized solution?
- If so, this solution is not documented anywhere
- if so, it could be interesting to get the default polyfills in angular-cli-build.js, instead of having to get them in node_modules/angular-cli/lib/broccoli/angular2-app.js
tkaiser, delasteve, anthonyreilly and jiricrispeyn