【问题标题】:Metro config not accepting blockListMetro 配置不接受阻止列表
【发布时间】: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


    【解决方案1】:

    是某些包使用了 metro-config@0.59 而我 npm-installed metro-config@0.61 所以它们不兼容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-07
      • 2013-09-24
      相关资源
      最近更新 更多