日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

vue.js将本地文件上传到ftp服务器,vue项目使用FTP传输部署项目服务器,node命令编写...

發布時間:2025/3/12 vue 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue.js将本地文件上传到ftp服务器,vue项目使用FTP传输部署项目服务器,node命令编写... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#!/usr/bin/env node

var fs = require('fs');? ? ? ? ? ? ? ? ? ? ? //? 引入需要模塊

var vinylFs = require( 'vinyl-fs' );

var ftp = require( 'vinyl-ftp' );

var vueConfig= require('../vue.config')? //這里是為了抓取打包文件名稱

var env = process.argv[2]?process.argv[2].replace('--', "").toLowerCase():null;? ? //抓取命令行的環境變量

var envHot = process.argv[3]?process.argv[3].replace('--', "").toLowerCase():null;

// 需要了解process.argv的文章末尾有鏈接

var deployInfo={? ? ? ? ? //這是是判斷身測試環境還是生產環境

staging:{

"ftpDir":vueConfig.publicPath.substring(0, vueConfig.publicPath.lastIndexOf('/')),? //? 抓取的打包文件夾名字

"ftpAd": "***.**.***.**",? //服務器ip

"user": "admin",? //ftp賬號

"password": "123456" // 密碼

},

production:{

"ftpDir": vueConfig.publicPath.substring(0, vueConfig.publicPath.lastIndexOf('/')),

"ftpAd": "***.**.***.**",? //服務器ip

"user": "admin",? //ftp賬號

"password": "123456" // 密碼

}

}

var deployConfig=null

switch(env)? ? ? ? ? ? ? ? //? 判斷抓取的字段

{

case 'stag':

deployConfig=deployInfo.staging;

break;

case 'pro':

deployConfig=deployInfo.production;

break;

}

var conn = new ftp( {? ? ? ? ? ? ? ? ? ? ? // 創建實例

host:? ? deployConfig.ftpAd,

user:? ? deployConfig.user,

password: deployConfig.password,

parallel: 3,? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //? 并行傳輸數,默認為3

idleTimeout:500,? ? ? ? // 保持空閑FTP連接的時間(毫秒),默認值為100

log:console.log? // 日志功能,默認為null

} );

switch(envHot) {? ? ? ? ? ? ? ? // 看看有沒有清除指令,便于執行不同的命令

case "clean":

deployClean();

break;

default:

deploy();

}

function deployClean()

{

conn.rmdir( deployConfig.ftpDir,function(){

console.log(deployConfig.ftpAd+" "+deployConfig.ftpDir+" deploy clean done!");

});

}

function deploy()

{

if(fs.existsSync("./dist"))? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 抓取 打包dist文件

{

vinylFs.src( ["./dist/**"], { buffer: false } )

.pipe(conn.dest( deployConfig.ftpDir))

.on('end', function(){ console.log(deployConfig.ftpDir+' project dist folder deploy end'); });

}else

{

console.log("本地需部署文件夾 "+deployConfig.localDir+" 不存在");

}

}

總結

以上是生活随笔為你收集整理的vue.js将本地文件上传到ftp服务器,vue项目使用FTP传输部署项目服务器,node命令编写...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。