最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

前端內(nèi)網(wǎng)開發(fā)npm安裝的幾種方法小結

 更新時間:2025年01月23日 08:28:10   作者:rgrgrwfe  
這篇文章主要介紹了如何在不聯(lián)網(wǎng)或離線環(huán)境下安裝npm依賴,文中通過代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考借鑒價值,需要的朋友可以參考下

1、介紹

最近有同學問我,怎么在不聯(lián)網(wǎng)的情況下安裝依賴。一般我們開發(fā)都是有網(wǎng)的,那么配置一下register一下鏡像路徑就可以從國內(nèi)的阿里云,淘寶,華為云,騰訊云等國內(nèi)鏡像文件。

有些同學開發(fā)項目會在內(nèi)網(wǎng)開發(fā),所以就需要離線去npm install一些依賴。

2、非聯(lián)網(wǎng)/離線安裝方法

—2.1搭建內(nèi)網(wǎng)私服

我先通過一臺電腦搭建一個內(nèi)網(wǎng)服務,verdaccio是一個輕量級的私有npm代理注冊服務

//先安裝一個代理服務
npm install -g verdaccio

//運行
verdaccio

//運行后的默認端口是4873,此時我們就可以設置鏡像路徑為這個代理地址
npm set registry http://localhost:4873/

//其他需求,如果你想要發(fā)布資源,推送到這個地址
npm publish --registry http://localhost:4873/

//項目成員安裝依賴
npm install <package> --registry http://localhost:4873/

//也可以在項目中創(chuàng)建一個.npmrc文件
registry=http://localhost:4873/

—2.2npm pack 歸檔文件

重點講一下這個方法

思路:首先我們用一臺電腦,聯(lián)網(wǎng)狀態(tài),去把所有依賴全部安裝好,然后通過代碼打成壓縮包,拷貝到指定目錄下

跟隨潮流,同ts來吧,基礎的創(chuàng)建項目啥的就不說了,講重點

創(chuàng)建完項目后,如果需要用到ts,就執(zhí)行這個命令tsc --init去創(chuàng)建一個tsconfig.json文件,在這個文件中將module:""設置為commonjs,即module:“commonjs”,這里涉及到.js,.cjs,.mjs幾種后綴的知識點,有機會再講。。。

這里為什么要用commonjs,因為我們在編寫代碼的時候,是用的esm,esm不支持__dirname,__dirname只能在cjs中使用,后面我們編譯出來就是cjs

我用去新建一個index.ts文件

import { exeSync } from 'node:child-process'
import fs from 'node:fs'
import path from 'node:path'

//存放我們打包后的文件目錄
const packageDir = path.join(__dirname, './packages')
//存在則不需要重復打包
if(!fs.existsSync(packageDir)){
    fs.mkdirSync(packageDir, {recursive: true})
}
//讀取node_modules文件目錄下的文件
const node_modules = path.join(__dirname, './node_modules')

function buildPackage() {
    const dirFileList = fs.readdirSync(node_modules ).filter(dit => {
        //排除.開頭文件和@符號開頭文件,其他請自行排除
        return !(dirFileList .startWith('.') || dirFileList .startWith('@'))
    })
    //遍歷所查詢到的文件
    dirFileList && dirFileList .map(dir => {
        //拿到文件的完整路徑,后續(xù)打包路徑
        const modules = path.join(node_modules, dir)
        //打包命令,需要引用,在第一行
        exeSync('npm pack', { cwd: modules })
        //將打包完的tgz文件找到
        const tgzfile = fs.readdirSync(modules).find(file => {
            return file.endsWith('.tgz')
        })
        if(tgzfile){
            //將找到的打包tgz文件移動到指定的package目錄中
            fs.renameSync(path.join(modules,tgzfile), path.join(packageDir,tgzfile))
        }
        
    })
}
//執(zhí)行
buildPackage()

//安裝命令
npm install ./packages/xxxx.tgz

—2.3U盤拷貝

這個就不多說了

總結

到此這篇關于前端內(nèi)網(wǎng)開發(fā)npm安裝的幾種方法的文章就介紹到這了,更多相關前端內(nèi)網(wǎng)npm安裝內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • JavaScript正則驗證密碼強弱度的實現(xiàn)方法

    JavaScript正則驗證密碼強弱度的實現(xiàn)方法

    這篇文章主要介紹了JavaScript正則驗證密碼強弱度的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • JS打印gridview實現(xiàn)原理及代碼

    JS打印gridview實現(xiàn)原理及代碼

    打印gridview對于一些童鞋們真的是很陌生啊,不過沒有關系,因為本文的出現(xiàn),或讓你茅塞頓開,好了話不多說,感興趣的朋友可以了解下,或許對你學習js高級知識有所幫助
    2013-02-02
  • Boostrap柵格系統(tǒng)與自己額外定義的媒體查詢的沖突問題

    Boostrap柵格系統(tǒng)與自己額外定義的媒體查詢的沖突問題

    這篇文章主要介紹了Boostrap柵格系統(tǒng)與自己額外定義的媒體查詢的沖突問題,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • Js 正則表達式知識匯總

    Js 正則表達式知識匯總

    本文對javascript中正則表達式進行了總結匯總,將知識點和注意點都理了一下,并附上2個練習題,這里分享給小伙伴
    2014-12-12
  • Listloading.js移動端上拉下拉刷新組件

    Listloading.js移動端上拉下拉刷新組件

    這篇文章主要介紹了Listloading.js移動端上拉下拉刷新組件的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-08-08
  • js實現(xiàn)html滑動圖片拼圖驗證

    js實現(xiàn)html滑動圖片拼圖驗證

    這篇文章主要為大家詳細介紹了js實現(xiàn)html滑動圖片拼圖驗證,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • amd、cmd、esmodule、commonjs區(qū)別詳解

    amd、cmd、esmodule、commonjs區(qū)別詳解

    本文主要介紹了amd、cmd、esmodule、commonjs區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • 詳解JS模塊導入導出

    詳解JS模塊導入導出

    這篇文章主要介紹了詳解JS模塊導入導出以及相關問題解決方法,需要的朋友學習參考下吧。
    2017-12-12
  • 淺談js promise看這篇足夠了

    淺談js promise看這篇足夠了

    下面小編就為大家分享一篇淺談js promise的使用。具有很好的參考價值,看完這篇都懂了。希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • 使用IE的地址欄來輔助調試Web頁腳本

    使用IE的地址欄來輔助調試Web頁腳本

    使用IE的地址欄來輔助調試Web頁腳本...
    2007-03-03

最新評論

普陀区| 广汉市| 伊川县| 大姚县| 呈贡县| 东明县| 会昌县| 承德市| 南投县| 和田市| 永兴县| 寿宁县| 武宣县| 都兰县| 甘肃省| 新密市| 方正县| 阳曲县| 西藏| 定襄县| 左云县| 汾西县| 泽普县| 马龙县| 道孚县| 邻水| 固镇县| 舒城县| 花莲市| 新宁县| 利津县| 廊坊市| 伊宁县| 平乐县| 利津县| 三门峡市| 台东市| 昌邑市| 韶关市| 平遥县| 石渠县|