我正在使用 React Native,我只想链接我的字体而不是其他。
我正在使用react-native-maps,它在文档中特别指出“不要使用
react-native link
”
在我看来,我看到人们说要做
react-native link
来链接字体,但我想知道是否有正确的语法来链接字体,例如:
react-native link ./assets/fonts
还是什么?这样它就不会链接我所有其他库
有一个合适的包称为
react-native-assets
,它仅链接和取消链接资产。节省了我一些手动链接的时间。
我将手动链接它们。不过,这对
react-native-maps
来说是一个非常奇怪的要求。几乎所有react-native中的独立库都需要链接。
如果其他人有更好的答案,请告诉我。
https://medium.com/@kswanie21/custom-fonts-in-react-native-tutorial-for-ios-android-76ceeaa0eb78
^ 我知道堆栈溢出不喜欢链接,但有很多步骤和图像。
编辑
很酷的事情,如果你这样做
react-native link <specific-library-name-here>
,那么react-native将首先链接你的资产,然后链接该特定的库。因此,如果您只想链接字体,您可以通过链接一些特定的库来实现。
编辑2
如果您只想链接您的资产文件夹,请尝试
react-native link "package-that-does-not-exist"
,它仍然会链接您的资产而不链接其他任何内容。
如果 React Native 版本≥ 0.60
在项目根目录下创建文件
react-native.config.js
并添加以下代码
module.exports = {
project: {
ios: {},
android: {}
},
assets: ["./assets/fonts/"]
};
和运行命令:
react-native link
或npx react-native link
有时在这种情况下你已经正确地编写了react-native.config.js;如果您执行此任务,它会对您有所帮助
1-删除react-native.config.js文件
2-再次使用相同的代码创建此文件
3-在控制台中写入react-native链接
然后你可以在 Xcode 中看到资源文件夹,你可以在 info.plist 中看到你的字体并复制捆绑资源
虽然 Marek Lisik 的答案对我不起作用,而且我也不想使用第三方库来完成这样的小任务。 因此,我通过将字体文件复制到以下文件夹中进行手动解决以进行Android开发。
your_app\android\app\src\main\assets\fonts
ios 也可以关注E Pierre回答。
步骤 - 1:在根文件夹中创建react-native.config.js文件
步骤 - 2:将此代码添加到此文件中
module.exports = {
project: {
ios:{},
android:{}
},
assets:['./assets/fonts/'], <--- add the path where fonts are added it should start from the root path
}
第 3 步:React-native 版本 < 0.69
运行
npx react-native link
命令
React-native 版本 > 0.69
运行
npx react-native-asset
命令