【发布时间】:2021-08-26 14:44:41
【问题描述】:
我正在使用 expo 构建一个 react-native 应用程序,我正在使用 react-native-svg-transformer 的模块并放大(我在其中创建了函数)。问题是放大目录下的函数有package.json文件,不起作用。这就是为什么我试图将放大目录放在 Metro 配置的 blocList 中,但我不断收到错误消息:
Failed to construct transformer: TypeError: Transformer is not a constructor
这是我的地铁配置:
const { getDefaultConfig } = require("expo/metro-config")
// extra config is needed to enable `react-native-svg-transformer`
module.exports = (async () => {
const {
resolver: { sourceExts, assetExts },
} = await getDefaultConfig(__dirname)
return {
transformer: {
babelTransformerPath: require.resolve("react-native-svg-transformer"),
assetPlugins: ["expo-asset/tools/hashAssetFiles"],
},
resolver: {
assetExts: assetExts.filter((ext) => ext !== "svg"),
sourceExts: [...sourceExts, "svg"],
blockList: [/amplify.*/]
},
}
})()
我也试过了,但也没有用:
const { getDefaultConfig } = require("expo/metro-config")
// extra config is needed to enable `react-native-svg-transformer`
module.exports = (async () => {
const {
resolver: { sourceExts, assetExts },
} = await getDefaultConfig(__dirname)
return {
transformer: {
babelTransformerPath: require.resolve("react-native-svg-transformer"),
experimentalImportSupport: false,
inlineRequires: true,
},
resolver: {
assetExts: assetExts.filter((ext) => ext !== "svg"),
sourceExts: [...sourceExts, "svg"],
blockList: [/amplify.*/]
},
}
})()
【问题讨论】:
标签: react-native expo metro-bundler