Cordova+Dva+antd-mobile實(shí)現(xiàn)react移動(dòng)端開發(fā)

新建App

官方文檔http://cordova.axuer.com/docs/zh-cn/latest/guide/cli/index.html

安裝Cordova CLI
$ npm install -g cordova
創(chuàng)建應(yīng)用
$ cordova create cordovaApp com.my.demo demo

cordovaApp戚嗅,com.my.demo璧亮,demo依次代表文件夾名,默認(rèn)反向域值 ,app應(yīng)用名

添加平臺(tái)
$ cd cordovaApp
$ cordova platform add android

使用dva

創(chuàng)建react項(xiàng)目
$ dva new src
安裝antd-moblie
$ yarn add antd-mobile
配項(xiàng)目輸出路徑

src/package.json文件build后面添加&& ((robocopy .\dist ..\www /MIR) & exit 0)

"build": "roadhog build && ((robocopy .\\dist ..\\www /MIR) & exit 0)"

真機(jī)調(diào)試

/src項(xiàng)目根目錄下

$ npm run build

cordova根目錄下

$ cordova run android

PS:真機(jī)調(diào)試時(shí),手機(jī)需在設(shè)置中打開開發(fā)者模式辽剧,如果找不到開發(fā)者模式冈钦,可以在關(guān)于手機(jī)中連續(xù)點(diǎn)擊版本號(hào)

使用cordova插件

以相機(jī)插件為例居凶,官方文檔地址 點(diǎn)擊查看

  1. 修改index.js滩愁,添加deviceready事件監(jiān)聽
// src/src/index.js
import dva from 'dva';
import './index.css';

document.addEventListener('deviceready', function () {
  // 1. Initialize
  const app = dva();

  // 2. Plugins
  // app.use({});

  // 3. Model
  // app.model(require('./models/example').default);

  // 4. Router
  app.router(require('./router').default);

  // 5. Start
  app.start('#root');

}, false);
  1. 在dva的組件目錄下新建Camera組件
// src/src/components/Camera.js
function Camera() {
  // 打開圖片庫
  navigator.camera.getPicture(onSuccess, onFail, {});

  function onSuccess(imageData) {
    var image = document.getElementById('myImage');
    image.src = imageData;
 }

  function onFail(message) {
    alert('Failed because: ' + message);
  }
}

export default Camera;
  1. 在IndexPage.js中調(diào)用
import React from 'react';
import { connect } from 'dva';
import styles from './IndexPage.css';
import Camera from '../components/Camera'

function IndexPage() {
  return (
    <div className={styles.normal}>
      <h1 className={styles.title}>Yay! Welcome to dva!</h1>
      <div className={styles.block}>
        <button onClick={Camera}>點(diǎn)擊拍照</button>
      </div>
      <div className={styles.block}>
        <img id="myImage" className={styles.welcome} alt="img" />
      </div>
    </div>
  );
}

IndexPage.propTypes = {
};

export default connect()(IndexPage);
  1. 打包dva
$ cnpm run build
  1. 修改www/index.html躯喇,添加cordova.js
// www/index.html
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Dva Demo</title>
  <link rel="stylesheet" href="index.css" />
</head>
<body>

  <div id="root"></div>
  <script src="index.js"></script>
  <script type="text/javascript" src="cordova.js"></script>

</body>
</html>
  1. 真機(jī)測試
$ cordova run android
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末辫封,一起剝皮案震驚了整個(gè)濱河市硝枉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌倦微,老刑警劉巖妻味,帶你破解...
    沈念sama閱讀 211,265評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異欣福,居然都是意外死亡责球,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來雏逾,“玉大人嘉裤,你說我怎么就攤上這事∑懿” “怎么了屑宠?”我有些...
    開封第一講書人閱讀 156,852評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長仇让。 經(jīng)常有香客問我典奉,道長,這世上最難降的妖魔是什么丧叽? 我笑而不...
    開封第一講書人閱讀 56,408評(píng)論 1 283
  • 正文 為了忘掉前任卫玖,我火速辦了婚禮,結(jié)果婚禮上踊淳,老公的妹妹穿的比我還像新娘假瞬。我一直安慰自己,他們只是感情好迂尝,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,445評(píng)論 5 384
  • 文/花漫 我一把揭開白布笨触。 她就那樣靜靜地躺著,像睡著了一般雹舀。 火紅的嫁衣襯著肌膚如雪芦劣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,772評(píng)論 1 290
  • 那天说榆,我揣著相機(jī)與錄音虚吟,去河邊找鬼。 笑死签财,一個(gè)胖子當(dāng)著我的面吹牛串慰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播唱蒸,決...
    沈念sama閱讀 38,921評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼邦鲫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了神汹?” 一聲冷哼從身側(cè)響起庆捺,我...
    開封第一講書人閱讀 37,688評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎屁魏,沒想到半個(gè)月后滔以,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,130評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡氓拼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,467評(píng)論 2 325
  • 正文 我和宋清朗相戀三年你画,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了抵碟。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,617評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡坏匪,死狀恐怖拟逮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情适滓,我是刑警寧澤唱歧,帶...
    沈念sama閱讀 34,276評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站粒竖,受9級(jí)特大地震影響颅崩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蕊苗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,882評(píng)論 3 312
  • 文/蒙蒙 一沿后、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧朽砰,春花似錦尖滚、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至造锅,卻和暖如春撼唾,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背哥蔚。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評(píng)論 1 265
  • 我被黑心中介騙來泰國打工倒谷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人糙箍。 一個(gè)月前我還...
    沈念sama閱讀 46,315評(píng)論 2 360
  • 正文 我出身青樓渤愁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親深夯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子抖格,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,486評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容