This library is a compatibility layer around @oblador/react-native-vector-icons to work with the Expo asset system. If you're using React Native without Expo, you have no need for this library -- carry on! (or maybe check out Expo).
👀: this library does not provide access to react-native-vector-icon's
Icon.getImageSource()
function for generating images from icons at runtime (for context on why, see this issue). If you find yourself needing an icon in the form of an image rather than text, you should generate that image yourself and bundle it with your app.
This library is part of the expo
package, so if you are using expo
you can simply use it like so
import React from 'react';
import Ionicons from '@expo/vector-icons/Ionicons';
export default class IconExample extends React.Component {
render() {
return <Ionicons name='md-checkmark-circle' size={32} color='green' />;
}
}
for more usage see Expo icons documentation
I'll be honest with you, it's not straightforward. You should set aside about an hour to do this.
src/vendor/react-native-vector-icons
, except the dotfiles.git status
and look at the untracked files. Remove anything that doesn't seem needed. For example, remove package.json, react-native.config.js, react-native.osx.js. Things to look out for are new icon fonts or new create-*
files.git diff **/*.js
- do any of the changes look like they should be synced over to the equivalent .ts
files in src
?/@expo/vector-icons
internals are different enough that you don't need to worry about it.bin
scripts, in which case we need them.yarn
when you're done and it'll copy vendor files over to build.@expo/vector-icons
version to "../"
(TODO: investigate this quirk!). If new icons were added, ensure that they work here.Create a commit on master.