クリップをクリップボードにコピーする
9053 ワード
写真でGia Oris on Unsplash
私は誰もが以下のトリックを必要とすると確信しません、しかし、私のクライアントの場所で、我々はダイナミックなBase 64パラメタを含むURLを通してのみアクセスできるアプリケーションを持っています.言うまでもなく、それは地元の開発を少し不便にします.
また、私は、私は自動的にブラウザを開くことができるCLIのオプションの大ファンではないことを認めなければならない.私が開発目的のためにほとんどChrome Intagtoモードを使うけれども、私はしばしば私が開発したものを試みるためにブラウザーの間で変わるのが好きです.
最後に、私はブックマークを使用しないでください.したがって、設定なしで、別のポートを使用する必要があるたびに
:3333
or :4200
or :8000
or :8100
など)そういうわけで、私は私のクリップボードにアプリケーションのスタートURLをコピーするべきであるアプリケーションにプレスタートスクリプトを加える考えを持っていました.そうすることで、私はちょうどブラウザを選択することができます、URIをペーストし、私は行くのが良いです.
依存
nodejsスクリプトからクリップボードに値をコピーしたり読んだりするには、ライブラリを使用しましたclipboardy このようなクロスプラットフォーム機能を実装します.
加えて、私もchalk アンboxen スタイリッシュな方法でコンソールにURLを印刷するには.
すべてのこれらの依存関係がオープンソースであり、同じ人によって開発されていることに気づくかもしれません👍.
npm i clipboardy chalk boxen --save-dev
スクリプト
依存関係が取り込まれると、プリスタートスクリプト自体を作成しました.この例では、ファイルを作成します
start-url.js
プロジェクトのルートで.スクリプトプライマリは
url
クリップボードのコピーを探しています.目的で、私はHello World 👋
複素数パラメータをエンコードできることを示す文字列.素敵なメッセージをプリントアウトするには
chalk
色、背景色、および大胆なオプションで.私の使用\n\n
改行を作成するにはこのライブラリは、スタイルの組み合わせや入れ子など、多くのオプションを提供することに注意する価値があります.使用
clipboardy
クリップボードにURLをコピーするには、実際にはほとんど仕事がなく、その関数を呼び出すことで解決できますcopy
すべてのURLを入力パラメータとします.最後に
console.log
, で生成された箱の中にメッセージを出力しますboxen
.const { write: copy } = require('clipboardy');
const chalk = require('chalk');
const boxen = require('boxen');
const params = encodeURIComponent('Hello World 👋');
const url = `http://localhost:3333/profile/${params}`;
(async () => {
let message = chalk.yellow.inverse('Your URL');
message += `\n\n${chalk.bold(`${url}`)}`;
try {
await copy(url);
message += `\n\n${chalk.grey('Copied local address to clipboard!')}`;
} catch (err) {
message = chalk.red.bold(`Cannot copy ${url} to clipboard 🥺\n\n${err.message}`);
}
console.log(
boxen(message, {
borderStyle: 'round',
padding: 1,
borderColor: 'yellow',
margin: 1
})
);
})();
ライフサイクル
ありがとうnpm 異なるライフサイクルでスクリプトを実行することが可能です.私がローカルにアプリケーションを始めるとき、私がURLをコピーするのを見ていたので、私はAとしてそれを加えました
prestart
私のスクリプトpackage.json
."scripts": {
"prestart": "node start-url.js"
}
あなたは“しかし、デビッド、なぜprestartではなく、ポストスタート?”私が答えるのはprestart
を実行します.反対にpoststart
, も実際に実行されるが、start
ライフサイクルがリリースされる.あなたのローカルサーバーが頻繁に、変更を監視するためにアクティブに滞在する場合.poststart
ローカルサーバーをキャンセルする場合のみ解決します.デモ
私がヒットしたときすべての場所にある
npm run start
コンソールでは、URLが生成され、クリップボードにコピーされ、次の出力に気付きます.私がブラウザの1つを開くならば、ナビゲーションバーで結果をペーストすることができます.
最後にヒット
enter
そして、生成されたパラメータで私のURLにアクセスしてください.概要
このポストの導入で下線として、私は本当に誰でもこれまでにこの解決を必要とするかどうかわからないです😅. とにかく、私はそれが楽しい読んでいたし、何かを改善する場合は私に知らせてください.
無限に、そして、向こうに!
ダビデ
あなたは私に手を伸ばすことができます、そして、なぜ、試してみるDeckDeckGo あなたの次のプレゼンテーションのために.
Reference
この問題について(クリップをクリップボードにコピーする), 我々は、より多くの情報をここで見つけました https://dev.to/daviddalbusco/copy-url-to-clipboard-on-npm-run-start-3gpテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol