我正在通过NPM安装/更新方法基于最新的0.15.0版本开发react-native app。通过反应原生MapView documentation看来,它应该支持" image" "注释"道具和"叠加" MapView中的prop。但是,那些道具在我的RN版本中没有用。
在查看react-native GitHub中的各个分支后,我发现只有主分支在MapView中有这些道具(参见this)。因为我通过NPM跟上RN的发布。我不清楚如何针对RN主分支进行开发。
有什么想法吗?
我能想到的一种方法是在我的npm的node_modules中执行主分支的git pull并覆盖react-native模块。然而,这看起来很激烈,我还会提到许多需要删除的不需要的部分。
另一个想法是手动复制主分支的MapView组件和相应的iOS本机文件RCTMap ...但这似乎不够优雅和乏味。
在这里寻找更优雅的解决方案。
答案 0 :(得分:3)
您应该能够在package.json中指定git依赖项,如下所示:
"dependencies": {
"react-native": "facebook/react-native",
},
npm会在安装时自动克隆repo。如果您想固定特定提交(强烈推荐),请执行facebook/react-native#f025049b
。
(请注意,此策略不适用于react
本身的某些软件包,这些软件包需要在npm之前构建一个步骤,但react-native
应该可以正常工作。)
答案 1 :(得分:0)
您可以在本地克隆本机的repo并将其安装在您的项目上:
> git clone https://github.com/facebook/react-native.git
> cd MyProject
> npm install ../react-native
答案 2 :(得分:0)
对于处于类似职位但不愿意或无法以任何理由跟随主分支的人,您可能会考虑等待这些功能。
来自其中一位主要贡献者(转述):React Native有大约2周的节奏。释放候选者(rc)是在开始循环的某个点从master获得的。两周后,它被提升为发布版,并且从当前的master状态创建了一个新的候选版本。然后循环重复。您希望使用的MapView功能应该显示在下一个rc中。