成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

npm 包如何支持子路徑?

teren / 1025人閱讀

摘要:包如何支持子路徑目前看到了兩種做法。最終,以根目錄下的為基準(zhǔn),將此包發(fā)布出去。通過(guò)能夠正常處理此種類(lèi)型的庫(kù),但是像等需要解析文件的可能會(huì)查找失敗。這種方案最終輸出到上的文件也更少,省得再寫(xiě)了。目前來(lái)看,兼容性更強(qiáng)一些。

npm 包如何支持子路徑?

目前看到了兩種做法。

redux-saga

一種是像 redux-saga/effects 一樣,其實(shí)際的資源文件在 lib/cjs/effects 下,但在根目錄下放置一個(gè)同名的 effects 目錄,目錄下放置一個(gè) package.json,相當(dāng)于軟鏈接一般,將 redux-saga/effects 視為一個(gè)私有庫(kù),由 main: ../lib/cjs/effects 指向?qū)嶋H的代碼所在。 最終,以根目錄下的 package.json 為基準(zhǔn),將此包發(fā)布出去。
npm 通過(guò) npmFileMap 能夠正常處理此種類(lèi)型的庫(kù),但是像 gulp 等需要解析 node_modules 文件的可能會(huì)查找失敗。

root/package.json

{
  "npmName": "redux-saga",
  "npmFileMap": [
    {
      "basePath": "/dist/",
      "files": [
        "*.js"
      ]
    }
  ]
}

effects/package.json

{
  "name": "redux-saga/effects",
  "private": true,
  "main": "../lib/effects.js",
  "module": "../es/effects.js",
  "jsnext:main": "../es/effects.js"
}
rxjs

另外一種是類(lèi)似于 rxjs/operators 的方案,當(dāng) build 出 lib 目錄后,直接復(fù)制一份 package.jsonlib 目錄下,然后在 libnpm publish。這種方案最終輸出到 npm 上的文件也更少,省得再寫(xiě) .npmignore 了。目前來(lái)看,兼容性更強(qiáng)一些。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/90158.html

相關(guān)文章

  • 代碼組織和部署 文件操作 node.js

    代碼組織和部署 模塊的路徑解析規(guī)則 require支持/或者盤(pán)符的絕對(duì)路徑,也支持./開(kāi)頭的相對(duì)地址同時(shí)require也支持第三種寫(xiě)法 內(nèi)置模塊 如果傳遞給require的函數(shù)是node.js的內(nèi)置模塊,將會(huì)不做路徑解析,直接返回內(nèi)部exports模塊要導(dǎo)出的對(duì)象 node_modules目錄 node.js定義一個(gè)node_modules存放模塊,每次使用foo/bar的方式的時(shí)候,會(huì)先尋找該目...

    Cc_2011 評(píng)論0 收藏0
  • vue開(kāi)發(fā)看這篇文章就夠了

    摘要:注意此處獲取的數(shù)據(jù)是更新后的數(shù)據(jù),但是獲取頁(yè)面中的元素是更新之前的鉤子函數(shù)說(shuō)明組件已經(jīng)更新,所以你現(xiàn)在可以執(zhí)行依賴(lài)于的操作。鉤子函數(shù)說(shuō)明實(shí)例銷(xiāo)毀 Vue -漸進(jìn)式JavaScript框架 介紹 vue 中文網(wǎng) vue github Vue.js 是一套構(gòu)建用戶(hù)界面(UI)的漸進(jìn)式JavaScript框架 庫(kù)和框架的區(qū)別 我們所說(shuō)的前端框架與庫(kù)的區(qū)別? Library 庫(kù),本質(zhì)上是一...

    fsmStudy 評(píng)論0 收藏0
  • 后端知識(shí)點(diǎn)總結(jié)——NODE.JS(高級(jí))

    摘要:階段是事件循環(huán)的第一階段習(xí)慣上往往都會(huì)設(shè)置數(shù)將回調(diào)函數(shù)添加到事件循環(huán)的階段的隊(duì)列中等待執(zhí)行。 后端知識(shí)點(diǎn)總結(jié)——NODE.JS(高級(jí)) 1.Node入門(mén): 什么是: 針對(duì)網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)的平臺(tái)主要特征: 基于Google的JavaScript運(yùn)行時(shí)引擎V8 擴(kuò)展了Node標(biāo)準(zhǔn)類(lèi)庫(kù): TCP,同步或異步文件管理,HTTP 為什么使用Node: 可以在服務(wù)器端運(yùn)行js: 現(xiàn)有前端團(tuán)隊(duì)可直...

    bovenson 評(píng)論0 收藏0
  • 使用gulp搭建一個(gè)傳統(tǒng)的多頁(yè)面前端項(xiàng)目的開(kāi)發(fā)環(huán)境

    摘要:簡(jiǎn)介使用搭建一個(gè)傳統(tǒng)的多頁(yè)面前端項(xiàng)目的開(kāi)發(fā)環(huán)境支持編譯支持支持開(kāi)發(fā)環(huán)境和打包生成支持文件變動(dòng)自動(dòng)刷新瀏覽器,是熱更新改動(dòng)無(wú)需刷新瀏覽器即可更新支持新增文件沒(méi)無(wú)需重啟,即可改動(dòng)自動(dòng)刷新瀏覽器支持命令生成雪碧圖和對(duì)應(yīng)支持,使用的插件是支持 gulp-easy github 1、簡(jiǎn)介 使用gulp搭建一個(gè)傳統(tǒng)的多頁(yè)面前端項(xiàng)目的開(kāi)發(fā)環(huán)境 支持pug scss es6編譯支持 支持開(kāi)發(fā)環(huán)境和打...

    alighters 評(píng)論0 收藏0
  • 精讀《Monorepo 的優(yōu)勢(shì)》

    摘要:引言本周精讀的文章是。精讀總的來(lái)說(shuō),雖然拆分子倉(cāng)庫(kù)拆分子包是進(jìn)行項(xiàng)目隔離的天然方案,但當(dāng)倉(cāng)庫(kù)內(nèi)容出現(xiàn)關(guān)聯(lián)時(shí),沒(méi)有任何一種調(diào)試方式比源碼放在一起更高效。前端精讀幫你篩選靠譜的內(nèi)容。 1. 引言 本周精讀的文章是 The many Benefits of Using a Monorepo。 現(xiàn)在介紹 Monorepo 的文章很多,可以分為如下幾類(lèi):直接介紹 Lerna API 的;介紹如何...

    xcc3641 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<