react native创建自定义模板



尝试按照本教程使用React Native Templates消除沸腾板,但对我来说一直失败

我想用一些默认代码做一个模板,比如这个

...
render() {
return (
<View style={{fontFamily: 'SomeAwesomeFont'}>
<Text>Hello </Text>
</View>
);
}
...

这个在包.json 中

"rnpm": {
"assets": [
"./assets/fonts/"
]
},

并在assets/fonts中添加一些字体文件

希望能够做到这一点:

▶ react-native init World --template HelloTemplate

▶ cd World

▶ react-native link


更新

@克里斯·吉曼给我指了指答案(谢谢)。整个文件夹必须命名为react-native-template-HelloTemplate

--===更新===--

我写了一篇博客文章,几乎重申了我在下面写的内容,但我认为它更清晰、更全面。

https://medium.com/@chris.geirman/the1-2-3s-of-rectat-native-templates-1f5dda037e11


我看过那篇文章,一段时间以来一直想尝试一下,所以我想借此机会做这件事,同时也能帮助你

你在描述中遗漏了许多细节,因为我无法确认你是否以与文章相同的方式进行了描述,所以我认为值得重申要点。另外,我觉得这篇文章可能有点含糊。以下是对我有效的方法。

注意:如果你确信你做的每件事都是正确的,那么你可以跳到第4节-发布。您的主要问题可能只是如何运行cli命令。

1)创建dependencies.json

您提到了package.json的一小部分内容,但本文指定您的依赖项应该放入一个名为dependencies.json的新文件中。如果您的依赖项是这些,那么该文件将如下所示(注意:我的模板仅依赖于react-navigation)。。。

{
"react-navigation": "^1.0.0-beta.15"
}

2) 清理你的`package.json

接下来的文章将描述您应该从package.json中删除依赖项、devDependencies、脚本和其他所有不必要的东西。模板名称必须遵循此约定。。。

react-native-template-{templateName}

我的模板名为geirman,所以这就是我的最终package.json,去掉了所有多余的项目。同样,这是整个文件。

{
"name": "react-native-template-geirman",
"version": "0.0.1"
}

3) 删除本机目录

rm -rf ./android
rm -rf ./ios

4) 发布

接下来,你被告知要发布,但没有说明如何发布或在哪里发布。您需要按照上面的命名约定发布到npm注册表。然后您可以将模板与以下命令一起使用。。。

react-native init myapp --template geirman

注意:我将我的示例发布到了npm注册表中,因此以上内容将起作用。

但您似乎实际上是在尝试从本地文件系统安装它。在这种情况下,您需要提供完全合格的模板路径,如…

react-native init myapp --template file:///Users/ChrisGeirman/dev/mobile/playground/templates/react-native-template-geirman

其他参考文献

  • 如果您想查看已发布模板的外观,请查看react-native-template-mobx。它不再工作,因为它使用index.ios.jsindex.android.js而不是较新的index.js入口点,但适用相同的基本结构
  • 发布到npm注册表

相关内容

  • 没有找到相关文章

最新更新