Firebase CLI에서 콘솔 처리 중인 꼬르륵꼬르륵 녀석을 빌려쓰다
14724 단어 Node.jsfirebase-tools
완성품
그럴 거야.
환경 구조
Firebase CLI의 js 소스를 모두 뒤집어 node에서 이동해 보세요.
cli-color 이런 포장을 사용하기 때문에 npm install을 먼저 놓습니다.
그리고 적당히 index.js와 같은 입구점으로 하는 파일을 만듭니다.
Firebase CLI 소스를 찾습니다.
firebase-tools의 출처를 찾은 후deploy/hosting/deploy.js에서 목표 처리를 발견했다.
정말 필요한 곳만 뽑아내면 다음과 같은 느낌이 든다.
var clc = require("cli-color");
var SPINNER = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
var spins = 0;
function _updateSpinner(newMessage) {
process.stdout.write(clc.erase.line + clc.move.left(9999));
process.stdout.write(clc.bold.cyan(SPINNER[spins % SPINNER.length] + " ") + newMessage);
spins++;
}
적당한 정보로 이걸 호출하세요.setInterval(() => {
_updateSpinner("ローディング中です");
}, 200);
빙글빙글 돌다cli-spinners
Firebase-tools의 포장 의존을 거슬러 올라가면 직접 사용하지 않은 것 같은데cli-spinners라는 매력적인 이름의 포장을 찾았다.
나는 뭔지 알았는데 사실은 JSON 파일
spinners.json
에 불과했다.하지만 이 JSON 파일은 보기만 해도 가슴이 두근거린다.
일부분만을 발췌하다
{
"dots": {
"interval": 80,
"frames": [
"⠋",
"⠙",
"⠹",
"⠸",
"⠼",
"⠴",
"⠦",
"⠧",
"⠇",
"⠏"
]
},
"circle": {
"interval": 100,
"frames": [
"◜",
"◠",
"◝",
"◞",
"◡",
"◟"
]
},
"bouncing": {
"interval": 80,
"frames": [
"[ ]",
"[ =]",
"[ ==]",
"[ ===]",
"[====]",
"[=== ]",
"[== ]",
"[= ]"
]
},
"monkey": {
"interval": 300,
"frames": [
"🙈 ",
"🙈 ",
"🙉 ",
"🙊 "
]
},
"clock": {
"interval": 100,
"frames": [
"🕐 ",
"🕑 ",
"🕒 ",
"🕓 ",
"🕔 ",
"🕕 ",
"🕖 ",
"🕗 ",
"🕘 ",
"🕙 ",
"🕚 "
]
}
}
아까 했어, 했어.var clc = require("cli-color");
var spinners = require('cli-spinners');
var spins = 0;
function _updateSpinner(frames, newMessage) {
process.stdout.write(clc.erase.line + clc.move.left(9999));
process.stdout.write((frames[spins % frames.length] + " ") + newMessage);
spins++;
}
var spinner = spinners.monkey;
setInterval(() => {
_updateSpinner(spinner.frames, "ローディング中です");
}, spinner.interval);
공연하다괜찮네.
후기
※ 이 글은 개인적인 견해로 소속된 조직을 대표하지 않습니다.
Reference
이 문제에 관하여(Firebase CLI에서 콘솔 처리 중인 꼬르륵꼬르륵 녀석을 빌려쓰다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/aakasaka/items/cfdc68a6ae2faa15c838텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)