搭建RxJs開(kāi)發(fā)環(huán)境

安裝項(xiàng)目依賴

打開(kāi)終端,建立一個(gè)新文件夾并進(jìn)入:

> mkdir rxjs && cd rxjs

我們這里用yarn作為包管理器拙泽,你也可以用npm,執(zhí)行下面命令泼疑,創(chuàng)建package.json 文件:

> yarn init -y

接下來(lái)荷荤,我們用yarn 添加RxJS蕴纳,Webpack 和TypeScript:

> yarn add rxjs webpack webpack-dev-server typescript ts-loader

我們還需要安裝webpack-cli作為開(kāi)發(fā)依賴:

> yarn add webpack-cli --dev

很好,接下來(lái)我們?nèi)?chuàng)建一些文件:

編輯 Package.json

打開(kāi)你常用的編輯器

打開(kāi) package.json 文件袱蚓,并且加入以下內(nèi)容:

{
  "name": "rxjs",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",

  // Add this

  "scripts": {
    "start": "webpack-dev-server --mode development"
  },

不久之后我們將運(yùn)行 yarn run start命令,它將為我們創(chuàng)建一個(gè)開(kāi)發(fā)環(huán)境用于學(xué)習(xí)RxJS.

設(shè)置 Webpack

創(chuàng)建一個(gè) webpack.config.js 文件体斩,并且粘貼以下代碼片段

const path = require('path');

module.exports = {
  entry: './src/code.ts',
  devtool: 'inline-source-map',
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        use: 'ts-loader',
        exclude: /node_modules/
      }
    ]
  },
  resolve: {
    extensions: [ '.ts', '.js', '.tsx' ]
  },
  output: {
    filename: 'bundle.js',
    path: path.resolve(__dirname, 'dist')
  }
};

這里唯一要注意的是我們定義的應(yīng)用入口文件路徑為 ./src/code.ts 絮吵。請(qǐng)注意 .ts擴(kuò)展名忱屑,這是專門(mén)為T(mén)ypeScript定制的莺戒,如果你不想用TypeScript,你也可以把它改成常用的.js文件

TypeScript 配置

創(chuàng)建另一個(gè)名為tsconfig.json的文件瘪校,然后粘貼以下配置信息

{
  "compilerOptions": {
    "outDir": "./dist/",
    "noImplicitAny": true,
    "module": "es6",
    "moduleResolution": "node",
    "sourceMap": true,
    "target": "es6",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

這個(gè)配置允許我們將es2017 JavaScript (es8) 轉(zhuǎn)換成2015 (es6).

完成項(xiàng)目設(shè)置

創(chuàng)建一個(gè) index.html文件然后粘貼以下代碼

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Learn RxJS with Coursetro</title>

    <style>
        body { font-family: 'Arial'; background: #ececec; }
        ul { list-style-type: none; padding: 20px; }
        li { padding: 20px; background: white; margin-bottom: 5px; }
    </style>
</head>
<body>
    <ul id="output"></ul>

    <script src="/bundle.js"></script>
</body>
</html>

在學(xué)習(xí)RxJS期間阱扬,我們將把所有結(jié)果輸出到#output這個(gè)無(wú)序列表中麻惶,而不是打印到控制臺(tái)信夫。

我還添加了一下基本的樣式卡啰,正如你所看到的樣子碎乃。

接下來(lái)惠奸,創(chuàng)建一個(gè)名為src的文件夾恰梢,在這個(gè)文件夾中創(chuàng)建一個(gè)code.ts文件嵌言,并在其中粘貼以下代碼

import * as Rx from "rxjs/Observable";

console.log(Rx);

再次進(jìn)入終端摧茴,在這個(gè)項(xiàng)目文件夾下輸入以下命令啟動(dòng)項(xiàng)目:

> yarn run start

在瀏覽器中訪問(wèn) http://localhost:8080 ,并打開(kāi)控制臺(tái)娃豹,你可以使用> Object

這就意味著你的RxJS 開(kāi)發(fā)環(huán)境已經(jīng)搭建成功购裙!

(譯者注)如果編譯失敗躏率,可能是RxJs版本問(wèn)題,執(zhí)行以下命令:

>yarn add rxjs-compat

原文鏈接:https://coursetro.com/posts/code/147/How-to-Install-RxJS---Setting-up-a-Development-Environment

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蓬抄,一起剝皮案震驚了整個(gè)濱河市倡鲸,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌黄娘,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,865評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異誓焦,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)移层,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,296評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)予借,“玉大人灵迫,你說(shuō)我怎么就攤上這事∑僦啵” “怎么了狞换?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,631評(píng)論 0 364
  • 文/不壞的土叔 我叫張陵修噪,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我度气,道長(zhǎng)割按,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,199評(píng)論 1 300
  • 正文 為了忘掉前任磷籍,我火速辦了婚禮适荣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘院领。我一直安慰自己弛矛,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,196評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布比然。 她就那樣靜靜地躺著丈氓,像睡著了一般。 火紅的嫁衣襯著肌膚如雪强法。 梳的紋絲不亂的頭發(fā)上万俗,一...
    開(kāi)封第一講書(shū)人閱讀 52,793評(píng)論 1 314
  • 那天饮怯,我揣著相機(jī)與錄音库倘,去河邊找鬼教翩。 笑死蚜退,一個(gè)胖子當(dāng)著我的面吹牛传黄,可吹牛的內(nèi)容都是我干的章姓。 我是一名探鬼主播凡伊,決...
    沈念sama閱讀 41,221評(píng)論 3 423
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼惠豺,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蛹疯!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起列吼,我...
    開(kāi)封第一講書(shū)人閱讀 40,174評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤盈简,失蹤者是張志新(化名)和其女友劉穎香浩,沒(méi)想到半個(gè)月后餐弱,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,699評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,770評(píng)論 3 343
  • 正文 我和宋清朗相戀三年千所,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了淫痰。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片籽孙。...
    茶點(diǎn)故事閱讀 40,918評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡烛占,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出揭芍,到底是詐尸還是另有隱情肌毅,我是刑警寧澤悬而,帶...
    沈念sama閱讀 36,573評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站朵逝,受9級(jí)特大地震影響页响,放射性物質(zhì)發(fā)生泄漏栈拖。R本人自食惡果不足惜涩哟,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,255評(píng)論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望融涣。 院中可真熱鬧,春花似錦、人聲如沸根蟹。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,749評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春没卸,著一層夾襖步出監(jiān)牢的瞬間煤蚌,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,862評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工这橙, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留助隧,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,364評(píng)論 3 379
  • 正文 我出身青樓丸边,卻偏偏與公主長(zhǎng)得像骄呼,于是被迫代替她去往敵國(guó)和親澄峰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,926評(píng)論 2 361

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