我有几个React Native应用,它们共享一些组件和助手。
因此,我创建了一个存储共享代码的库,并通过将其作为依赖项添加到各自的package.json
中来在我的应用程序中使用它。
在自定义库中,我使用react-native.config.js
链接某些字体
module.exports = {
assets: ['./assets/fonts']
};
在我的应用中,我执行npx react-native link my-custom-library
来链接这些字体。
现在,此共享库也正在使用react-native-community/react-native-localize。
而且我不知道如何在我的应用程序中链接它?
npx react-native link my-custom-library
?react-native-localize
?答案 0 :(得分:0)
1)关于RN 0.60+的字体:
react-native.config.js
具有以下内容:
module.exports = {
project: {
ios: {},
android: {},
assets: ['./src/assets/fonts', 'react-native-vector-icons'],
// Add the rn-vector icons in the above array only if you use that module, or your <libraryName> too.
};
信息将资产链接到ios项目信息将资产链接到android
项目成功资产已成功链接到您的项目
在Info.plist文件中添加字体:
<key>UIAppFonts</key>
<array>
<string>AntDesign.ttf</string>
<string>Entypo.ttf</string>
<string>EvilIcons.ttf</string>
<string>Feather.ttf</string>
<string>FontAwesome.ttf</string>
<string>FontAwesome5_Brands.ttf</string>
<string>FontAwesome5_Regular.ttf</string>
<string>FontAwesome5_Solid.ttf</string>
<string>Foundation.ttf</string>
<string>Ionicons.ttf</string>
<string>MaterialIcons.ttf</string>
<string>MaterialCommunityIcons.ttf</string>
<string>SimpleLineIcons.ttf</string>
<string>Octicons.ttf</string>
<string>Zocial.ttf</string>
</array>
在Run Script Only When Installing
中检查Xcode->YourProjectTarget->BuildPhases-> Copy Pods Resources
rm -rf $TMPDIR/react- && rm -rf $TMPDIR/metro- && rm -rf $TMPDIR/haste-* && watchman watch-del-all && rm -rf ios/build
并重新启动JS服务器。
此处提供来源和更多信息:
https://medium.com/@mehran.khan/ultimate-guide-to-use-custom-fonts-in-react-native-77fcdf859cf4
没有react-native link命令,我无法使字体工作,而且似乎其他人也遇到了这个问题。
2)关于react-native-localize
如果您已经手动链接了它,只需运行react-native unlink react-native-localize
,然后转到ios
文件夹并运行pod install
。
第use_native_modules
行(来自Podfile
)将使pod安装程序从node_modules搜索库文件夹中的pod spec文件(RNLocalize.podspec
)并安装并自动链接。
注释:
https://github.com/oblador/react-native-vector-icons/issues/1041