memowake-front/metro.config.js
2025-07-21 14:42:53 +08:00

33 lines
969 B
JavaScript

const { getDefaultConfig } = require('expo/metro-config');
const { withNativeWind } = require('nativewind/metro');
const path = require('path');
const config = getDefaultConfig(__dirname);
// SVG 转换配置
config.transformer = {
...config.transformer,
babelTransformerPath: require.resolve('react-native-svg-transformer'),
};
config.resolver = {
unstable_enableDynamicResolver: true,
...config.resolver,
assetExts: config.resolver.assetExts.filter(ext => ext !== 'svg'),
sourceExts: [...config.resolver.sourceExts, 'svg'],
alias: {
...config.resolver?.alias,
'@/': path.resolve(__dirname, './'),
},
platforms: ['ios', 'android', 'native', 'web'],
};
// Web 环境下的模块别名
if (process.env.EXPO_PLATFORM === 'web') {
config.resolver.alias = {
...config.resolver.alias,
'expo-sqlite': path.resolve(__dirname, './lib/database/empty-sqlite.js'),
};
}
module.exports = withNativeWind(config, { input: './global.css' });