我正在使用 xcode 10,React-Native 0.60。
我知道 rn 0.60 具有自动链接功能,但它不适用于 rn-vector-icons。当我手动链接此包时,xcode 会引发错误并说
Multiple commands produce '/Users/alkanv/Library/Developer/Xcode/DerivedData/Circle-bnmddodmnsbyriecdpuymeenohdn/Build/Products/Debug-iphonesimulator/Circle.app/Foundation.ttf':
1) Target 'Circle' (project 'Circle') has copy command from '/Users/alkanv/Circle/node_modules/react-native-vector-icons/Fonts/Foundation.ttf' to '/Users/alkanv/Library/Developer/Xcode/DerivedData/Circle-bnmddodmnsbyriecdpuymeenohdn/Build/Products/Debug-iphonesimulator/Circle.app/Foundation.ttf'
2) That command depends on command in Target 'Circle' (project 'Circle'): script phase “[CP] Copy Pods Resources”
它为部分中列出的每个图标文件提供此错误Build Phahes -> Copy Bundle Resources
。当我搜索这个问题时,人们说解决方案是从捆绑资源部分删除那些图标文件。但是,当我从那里删除 .ttf 文件时,它会成功构建,但这次 React Native 抛出错误并说:
Unrecognized font family Material Icons
顺便说一句,这与 Material Icon 无关,如果我尝试将 FontAwesome 放在那里,它也会抛出同样的错误。
我为此损失了半天时间,因此将不胜感激,谢谢。
更新
我解决问题。
取消链接包,删除 npm 包,重新安装。再次链接,安装 pod。导航到 info.plist 文件,添加要使用的字体类fonts provided for the application
,删除所有列出的与矢量图标相关的文件Build Phahes -> Copy Bundle Resources
如果这没有帮助,请安装 react-native-config,react-native.config.js
在项目的根文件夹中创建一个名为的文件。
将此行添加到该文件:
module.exports = {
dependencies: {
'react-native-vector-icons': {
platforms: {
android: null,
ios: null,
},
},
},
};