<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>React Native on Yeqown</title>
    <link>https://www.yeqown.xyz/tags/React-Native/</link>
    <description>Recent content in React Native on Yeqown</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    <lastBuildDate>Fri, 18 May 2018 12:38:14 +0000</lastBuildDate>
    <atom:link href="https://www.yeqown.xyz/tags/React-Native/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>自己写一个手机菜谱APP</title>
      <link>https://www.yeqown.xyz/2018/05/18/%E8%87%AA%E5%B7%B1%E5%86%99%E4%B8%80%E4%B8%AA%E6%89%8B%E6%9C%BA%E8%8F%9C%E8%B0%B1APP/</link>
      <pubDate>Fri, 18 May 2018 12:38:14 +0000</pubDate>
      <guid>https://www.yeqown.xyz/2018/05/18/%E8%87%AA%E5%B7%B1%E5%86%99%E4%B8%80%E4%B8%AA%E6%89%8B%E6%9C%BA%E8%8F%9C%E8%B0%B1APP/</guid>
      <description>&lt;p&gt;需要的技术及工具：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Python3 + Selenuium&lt;/li&gt;&#xA;&lt;li&gt;Golang net/http&lt;/li&gt;&#xA;&lt;li&gt;React-Native 相关（使用了react-navigation）&lt;/li&gt;&#xA;&lt;li&gt;MongoDB&lt;/li&gt;&#xA;&lt;li&gt;Redis&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;代码地址：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/yeqown/recipe&#34;&gt;github.com/yeqown/recipe&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;!-- more --&gt;&#xA;&lt;h3 id=&#34;项目构思及构成&#34;&gt;项目构思及构成&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a1%b9%e7%9b%ae%e6%9e%84%e6%80%9d%e5%8f%8a%e6%9e%84%e6%88%90&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;食谱类型的App，应用市场肯定有更好的的食谱APP。所以自己开发的目的，首先是写代码，其次是定制APP～&#xA;好的，现在化身产品经理，设计一下APP有哪些功能：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;每日菜谱推荐，推荐可更换&lt;/li&gt;&#xA;&lt;li&gt;每天需要准备的材料提醒&lt;/li&gt;&#xA;&lt;li&gt;发现更多菜谱&lt;/li&gt;&#xA;&lt;li&gt;分类筛选菜谱&lt;/li&gt;&#xA;&lt;li&gt;搜索菜谱&lt;/li&gt;&#xA;&lt;li&gt;查看菜谱详情&lt;/li&gt;&#xA;&lt;li&gt;设置（不知道设置啥，提前准备吧）&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;blockquote class=&#39;book-hint &#39;&gt;&#xA;&lt;p&gt;设计稿？不存在的，随心所欲。&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;p&gt;现在分析下我需要做的事情：&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;能跑起来的APP，与restful web api 交互。&lt;/li&gt;&#xA;&lt;li&gt;能跑起来的web-api，提供菜谱数据，筛选，推荐，搜索等功能&lt;/li&gt;&#xA;&lt;li&gt;能跑起来的简易spider，从网上获取菜谱信息。（这个爬虫能解析动态生成网站就够用了，姑且称之为爬虫吧）&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;blockquote class=&#39;book-hint &#39;&gt;&#xA;&lt;p&gt;没有考虑大量数据，因此爬虫并不通用，只适合特定XX网站。&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h3 id=&#34;实战爬虫&#34;&gt;实战爬虫&lt;a class=&#34;anchor&#34; href=&#34;#%e5%ae%9e%e6%88%98%e7%88%ac%e8%99%ab&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;这个APP里面最重要的就是菜谱数据了，那么开发之前，需要明确的数据格式，如下：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;{&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;cat&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;cat&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;img&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;img_url&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;mark_cnt&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;19101&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;view_cnt&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#ae81ff&#34;&gt;181891&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;setps&amp;#34;&lt;/span&gt;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;desc&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;img&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#75715e&#34;&gt;// more step&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;material&amp;#34;&lt;/span&gt;: {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;ingredients&amp;#34;&lt;/span&gt;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;ingredients_name&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;weight&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;ingredients_weight&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#75715e&#34;&gt;// more ingredients&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;seasoning&amp;#34;&lt;/span&gt;: [&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seasoning_name&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;                &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;weight&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;seasoning_weight&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;            &lt;span style=&#34;color:#75715e&#34;&gt;// more seasoning&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        ],&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    },&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;create_time&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;2018xxxxxx&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;&amp;#34;update_time&amp;#34;&lt;/span&gt;: &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;2018xxxxxx&amp;#34;&lt;/span&gt;,&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id=&#34;目标&#34;&gt;目标&lt;a class=&#34;anchor&#34; href=&#34;#%e7%9b%ae%e6%a0%87&#34;&gt;#&lt;/a&gt;&lt;/h4&gt;&#xA;&lt;blockquote class=&#39;book-hint &#39;&gt;&#xA;&lt;p&gt;前提：无法直接获取到该网站的服务API，才使用爬虫间接获取数据。&lt;/p&gt;</description>
    </item>
    <item>
      <title>RN历险记</title>
      <link>https://www.yeqown.xyz/2018/01/11/RN%E5%8E%86%E9%99%A9%E8%AE%B0/</link>
      <pubDate>Thu, 11 Jan 2018 18:11:23 +0000</pubDate>
      <guid>https://www.yeqown.xyz/2018/01/11/RN%E5%8E%86%E9%99%A9%E8%AE%B0/</guid>
      <description>&lt;p&gt;讲述配置ReactNative的心酸历程&lt;/p&gt;&#xA;&lt;!-- more --&gt;&#xA;&lt;h3 id=&#34;程序猿长征第一步&#34;&gt;程序猿长征第一步&lt;a class=&#34;anchor&#34; href=&#34;#%e7%a8%8b%e5%ba%8f%e7%8c%bf%e9%95%bf%e5%be%81%e7%ac%ac%e4%b8%80%e6%ad%a5&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;根据官方文档来安装RN, 以及巨大无比的&lt;code&gt;Xcode Ver9.0.0&lt;/code&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;错误一build-fail&#34;&gt;错误一：Build Fail&lt;a class=&#34;anchor&#34; href=&#34;#%e9%94%99%e8%af%af%e4%b8%80build-fail&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;可能描述不太一致, 但是原因都差不多, 文件缺失。&#xA;菜鸟想必看到这些个报错, 两眼一懵逼, 啥子情况, 怎么和官方的描述不一致, 一个及其简单的RN-Demo, 我就是想跑一下的喂！&lt;/p&gt;&#xA;&lt;p&gt;我遇到的情况, 分为两种：&lt;/p&gt;&#xA;&lt;blockquote class=&#39;book-hint &#39;&gt;&#xA;&lt;p&gt;其一是安装很慢, 之后失败&#xA;其二是安装很快, 然后失败&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;p&gt;经过反复的“瞎子”调整, 在多次更换react, react-native版本, 求助Google大叔无果之后。我开始了阅读输出日志的漫漫长路, 终于发现了build失败的元凶, &lt;code&gt;boost/xxx.hpp not found&lt;/code&gt;为啥找不到呢, 去文件夹一看, 才发现这些文件真的不存在&amp;hellip;&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;好了知道错误, 就再Google下咯（其实我还去改过这些&lt;code&gt;#includ&amp;lt;boost/config/user.hpp&amp;gt;&lt;/code&gt; 0&amp;lt;~&amp;gt;0）这里就直接给出我找的结果吧: &lt;a href=&#34;http://cdn2.jianshu.io/p/2ef019a7e82a&#34;&gt;http://cdn2.jianshu.io/p/2ef019a7e82a&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;总的说来, 就是自动下载的的第三方库是残缺的&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;错误二cfbundleidentifier-not-found&#34;&gt;错误二：CFBundleIdentifier not Found&lt;a class=&#34;anchor&#34; href=&#34;#%e9%94%99%e8%af%af%e4%ba%8ccfbundleidentifier-not-found&#34;&gt;#&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;第二错误也是困扰了比较多人, 我遇到的只是导致这个情况的其中之一&lt;/p&gt;&#xA;&lt;p&gt;通过查看输出日志, 并没有发现什么有用的信息, 提示的是&lt;code&gt;Command Fail , balabala…&lt;/code&gt;&#xA;手动搜索了一下&lt;code&gt;PlistBuddy&lt;/code&gt;, 了解了下用法,  然后我手动执行了下命令, 居然可以！！！！什么情况, 那为什么提示错误信息？果断进入到文件夹中查看,果然文件是存在的那么为啥一个可以, 一个不可以呢？到这里, 大致猜到原因了, &lt;code&gt;没有找到文件&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;再次以此为点求助Google大叔:&#xA;&lt;a href=&#34;http://blog.csdn.net/ohyeahhhh/article/details/54691512&#34;&gt;http://blog.csdn.net/ohyeahhhh/article/details/54691512&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;这个坑就是, Xcode编译保存的路径和react-native-cli寻找的路径不一致, 通过修改路径就OK啦, 还有其他原因导致的这个fail 请参阅链接, 先搞清楚&lt;code&gt;react-native run-ios&lt;/code&gt;做了啥事.&lt;/p&gt;&#xA;&lt;p&gt;中间更多细节”虐“去~~~~, 感谢预先踩坑的前辈, 最终项目成功运行啦！&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
