mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-16 03:31:45 +08:00
fix: load globals first
This commit is contained in:
@ -21,8 +21,9 @@ export default function (config: Config, env: IWebpackEnv): Config {
|
||||
config.mode(mode);
|
||||
|
||||
// package.json is generated by the CLI with runtime options
|
||||
// this ensures it's not included in the bundle
|
||||
config.externals(['package.json']);
|
||||
// this ensures it's not included in the bundle, but rather
|
||||
// resolved at runtime
|
||||
config.externals(['package.json', '~/package.json']);
|
||||
|
||||
// todo: devtool
|
||||
config.devtool('inline-source-map');
|
||||
@ -32,7 +33,18 @@ export default function (config: Config, env: IWebpackEnv): Config {
|
||||
// appears to be working - but we still have to deal with HMR
|
||||
config.target('node');
|
||||
|
||||
config.entry('bundle').add(entryPath);
|
||||
config
|
||||
.entry('bundle')
|
||||
// ensure we load nativescript globals first
|
||||
.add('@nativescript/core/globals/index.js')
|
||||
.add(entryPath);
|
||||
|
||||
// inspector_modules
|
||||
config.when(shouldIncludeInspectorModules(env), (config) => {
|
||||
config
|
||||
.entry('tns_modules/@nativescript/core/inspector_modules')
|
||||
.add('@nativescript/core/inspector_modules');
|
||||
});
|
||||
|
||||
config.output
|
||||
.path(getAbsoluteDistPath())
|
||||
@ -74,13 +86,6 @@ export default function (config: Config, env: IWebpackEnv): Config {
|
||||
.add('node_modules/@nativescript/webpack/dist/loaders')
|
||||
.add('node_modules');
|
||||
|
||||
// inspector_modules
|
||||
config.when(shouldIncludeInspectorModules(env), (config) => {
|
||||
config
|
||||
.entry('tns_modules/@nativescript/core/inspector_modules')
|
||||
.add('@nativescript/core/inspector_modules');
|
||||
});
|
||||
|
||||
config.resolve.extensions
|
||||
.add(`.${platform}.ts`)
|
||||
.add('.ts')
|
||||
@ -95,7 +100,6 @@ export default function (config: Config, env: IWebpackEnv): Config {
|
||||
|
||||
// base aliases
|
||||
config.resolve.alias
|
||||
.set('~/package.json', 'package.json')
|
||||
.set('~', '<TODO>appFullPath')
|
||||
.set('@', '<TODO>appFullPath');
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
import { merge } from 'webpack-merge';
|
||||
import { getValue } from './config';
|
||||
import { getAllDependencies, getDependencyPath } from './dependencies';
|
||||
import { determineProjectFlavor } from './flavor';
|
||||
@ -16,6 +17,7 @@ import {
|
||||
// that show all the utils inline
|
||||
// rather than imports to types
|
||||
export default {
|
||||
merge,
|
||||
config: {
|
||||
getValue,
|
||||
},
|
||||
@ -27,9 +29,9 @@ export default {
|
||||
determineProjectFlavor,
|
||||
},
|
||||
log: {
|
||||
error,
|
||||
info,
|
||||
warn,
|
||||
error,
|
||||
},
|
||||
project: {
|
||||
getProjectRootPath,
|
||||
|
@ -11,7 +11,7 @@ function cleanup(data: any[]) {
|
||||
}
|
||||
|
||||
export function error(...data: any): Error {
|
||||
console.error(`[@nativescript/webpack]`, ...cleanup(data));
|
||||
console.error(`[@nativescript/webpack] Error: \n`, ...cleanup(data));
|
||||
|
||||
// we return the error - the caller can throw or ignore
|
||||
if (typeof data[0] === 'string') {
|
||||
@ -22,11 +22,11 @@ export function error(...data: any): Error {
|
||||
}
|
||||
|
||||
export function warn(...data: any): void {
|
||||
console.warn(`[@nativescript/webpack]`, ...cleanup(data));
|
||||
console.warn(`[@nativescript/webpack] Warn: \n`, ...cleanup(data));
|
||||
}
|
||||
|
||||
export function info(...data: any): void {
|
||||
console.info(`[@nativescript/webpack]`, ...cleanup(data));
|
||||
console.info(`[@nativescript/webpack] Info: \n`, ...cleanup(data));
|
||||
}
|
||||
|
||||
// todo: refine
|
||||
|
Reference in New Issue
Block a user