Skip to content

react-native-svg-transformer not working with expo #13

@ps37

Description

@ps37

"react-native-svg": "8.0.10", (inside expo's package.json)
react-native "version": "0.57.1"
expo "version": "32.0.6"
"react-native-svg-transformer": "^0.12.1"

metro.config.js:


module.exports = (async () => {
    const {
        resolver: { sourceExts, assetExts }
    } = await getDefaultConfig();
    console.log('source exts: ', sourceExts);
    return {
        transformer: {
            babelTransformerPath: require.resolve("react-native-svg-transformer")
        },
        resolver: {
            assetExts: assetExts.filter(ext => ext !== "svg"),
            sourceExts: [...sourceExts, "svg"]
        }
    };
})();

packagerOpts inside app.json:

{
  "expo": {
    "packagerOpts": {
      "config": "metro.config.js"
    },
    "name": "Plogalong",
    "slug": "plogalong",
    "privacy": "public",
    "sdkVersion": "32.0.0",
    "platforms": [
      "ios",
      "android"
    ],
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/images/icon.png",
    "splash": {
      "image": "./assets/images/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ],
    "ios": {
      "supportsTablet": true
    }
  }
}

metro.config.js and app.json are at the same level.

Inside the component:
import { BackPacker } from '../assets/icons/backpacker.svg';

This is resulting in the following error:
image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions