Skip to content

Commit d66acfd

Browse files
authored
Merge pull request #4860 from NativeScript/kddimitrov/fix-preview-downloaded-app
fix: preview for app downloaded from playground fails
2 parents 4f9a2de + 69782ea commit d66acfd

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

lib/controllers/preview-app-controller.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export class PreviewAppController extends EventEmitter implements IPreviewAppCon
1919
private $hmrStatusService: IHmrStatusService,
2020
private $logger: ILogger,
2121
public $hooksService: IHooksService,
22+
private $pluginsService: IPluginsService,
2223
private $prepareController: PrepareController,
2324
private $previewAppFilesService: IPreviewAppFilesService,
2425
private $previewAppPluginsService: IPreviewAppPluginsService,
@@ -48,6 +49,8 @@ export class PreviewAppController extends EventEmitter implements IPreviewAppCon
4849
}
4950

5051
private async previewCore(data: IPreviewAppLiveSyncData): Promise<void> {
52+
const projectData = this.$projectDataService.getProjectData(data.projectDir);
53+
await this.$pluginsService.ensureAllDependenciesAreInstalled(projectData);
5154
await this.$previewSdkService.initialize(data.projectDir, async (device: Device) => {
5255
try {
5356
if (!device) {
@@ -71,7 +74,6 @@ export class PreviewAppController extends EventEmitter implements IPreviewAppCon
7174
});
7275
}
7376

74-
const projectData = this.$projectDataService.getProjectData(data.projectDir);
7577
await this.$hooksService.executeBeforeHooks("preview-sync", { hookArgs: { ...data, platform: device.platform, projectData } });
7678

7779
if (data.useHotModuleReload) {

test/services/playground/preview-app-livesync-service.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,9 @@ function createTestInjector(options?: {
184184
executeBeforeHooks: () => ({}),
185185
executeAfterHooks: () => ({})
186186
});
187+
injector.register("pluginsService", {
188+
ensureAllDependenciesAreInstalled: () => { return Promise.resolve(); }
189+
});
187190

188191
return injector;
189192
}

0 commit comments

Comments
 (0)