Skip to content

Commit ac740cb

Browse files
Tsukikyliau
authored andcommitted
fix(@angular-devkit/build-angular): script chunk in angular.json return false then calling isInitial
This commit add the webpack chunk with it related chunkgroup or entrypoint
1 parent 79a46d0 commit ac740cb

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

packages/angular_devkit/build_angular/src/angular-cli-files/plugins/scripts-webpack-plugin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ export class ScriptsWebpackPlugin {
8383

8484
const entrypoint = new EntryPoint(this.options.name);
8585
entrypoint.pushChunk(chunk);
86-
86+
chunk.addGroup(entrypoint);
8787
compilation.entrypoints.set(this.options.name, entrypoint);
8888
compilation.chunks.push(chunk);
8989
compilation.assets[filename] = source;

packages/angular_devkit/build_angular/test/browser/scripts-array_spec_large.ts

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* found in the LICENSE file at https://angular.io/license
77
*/
88

9-
import { DefaultTimeout, runTargetSpec } from '@angular-devkit/architect/testing';
9+
import { DefaultTimeout, TestLogger, runTargetSpec } from '@angular-devkit/architect/testing';
1010
import { PathFragment, join, normalize, virtualFs } from '@angular-devkit/core';
1111
import { tap } from 'rxjs/operators';
1212
import { browserTargetSpec, host } from '../utils';
@@ -133,4 +133,22 @@ describe('Browser Builder scripts array', () => {
133133
}),
134134
).toPromise().then(done, done.fail);
135135
});
136+
137+
it('chunk in entry', (done) => {
138+
host.writeMultipleFiles(scripts);
139+
140+
const overrides = { scripts: getScriptsOption() };
141+
const logger = new TestLogger('build-script-entry');
142+
143+
runTargetSpec(host, browserTargetSpec, overrides, DefaultTimeout, logger).pipe(
144+
tap((buildEvent) => expect(buildEvent.success).toBe(true)),
145+
tap(() => {
146+
const validate = ` [entry] [rendered]`;
147+
expect(logger.includes(`(lazy-script) 69 bytes${validate}`)).toBe(true);
148+
expect(logger.includes(`(renamed-script) 78 bytes${validate}`)).toBe(true);
149+
expect(logger.includes(`(renamed-lazy-script) 88 bytes${validate}`)).toBe(true);
150+
logger.clear();
151+
}),
152+
).toPromise().then(done, done.fail);
153+
});
136154
});

0 commit comments

Comments
 (0)