JavaScriptからのクリップボードの操作は、長いあいだ開発者たちに切望されていました。かつてはFlashを使って実現するハックなどがありましたが、各ブラウザがexecCommandによるクリップボード操作を実装したことで、現在は落ち着きつつあります。 ただ、APIが綺麗に整備されているとは言いにくく、あまり現代的ではありません。そこで、スマートかつ現代的にクリップボードを扱うことができる、Async Clipboard APIの実装が進みつつあります。 Async Clipboard APIはその名の通り非同期でクリップボードを扱うAPIです。Async Clipboard APIはPromiseを返すので、直感的に扱えるようになっています。 従来のAPIでも、execCommandを用いることによってクリップボードを操作することができました。しかし、バグが多くブラウザ間の整合性が取
こんにちは、フロントエンドエキスパートチームの @koba04 です。 本記事では、kintone の REST API を使うためのクライアントである @kintone/rest-api-client (以下 rest-api-client) の構成や工夫した点について紹介します。 本記事は rest-api-client の 1.6.0 のバージョンに基づいています。 @kintone/rest-api-client とは rest-api-client とは、kintone が提供する REST API を利用するためのクライアントライブラリです。 GitHub 上は kintone/js-sdk の Monorepo の 1 パッケージとして開発されています。 kintone/js-sdk での Monorepo 開発については下記の記事を参照してください。 https://blo
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? webpackを ^4.44.0 -> ^5.0.4にマイグレーションしましたので、 その際の作業の覚書です。 migrationの仕方 https://webpack.js.org/migrate/5/ 基本的に上記の公式を読みつつ、エラーが出たらその都度エラー文を元に対応していく形で進めました。 元々のwebpackの設定にもよって対応も変わってくるかと思いますが、 主要な変更箇所と実際に私が変更した箇所を紹介しておきます。 loaderとuseの厳格化 【参考】 https://blog.hiroppy.me/entry/webp
ESLint にも TypeScript にも「ルールを設定してみたけど、いざ運用するとなるとエラー出ちゃった。これ動作確認して欲しいのにデプロイが CI に弾かれちゃう。うーん、ごまかしちゃえ(てへぺろ)」って時などに使えるハッチが存在しています。ファイル単位・ブロック単位・行単位でそれぞれいろいろな方法があるのでそれらをまとめます。 TypeScript word 単位で無視する ご存知の通り as や any が使えます。 行単位で無視する @ts-ignore で抑制できます。 TS2.6 からの機能でSuppress errors in .ts files using ’// @ts-ignore’ commentsによると、 TypeScript 2.6 support suppressing errors in .js files using // @ts-ignore co
WEB+DB PRESS本誌では久しぶりとなる連載インタビュー企画。新型コロナ禍のさなか対面での取材を避け、リモートで行います。ホストは関満徳が務めます。記念すべき第1回目のゲストとしてお迎えしたのは、Node.js日本ユーザグループ代表理事の古川陽介氏です。 古川氏は、日本トップクラスのJavaScriptエンジニアとして知られ、大学院を卒業後、数社での勤務を経て、社員のマネジメントとWebアプリケーション作成用のユーティリティツールやフレームワークの開発を担当されています。その傍ら、Japan Node.js Association代表理事として、国内外のカンファレンスへの登壇、Node.jsの勉強会やイベント運営など積極的に活動されています。 古川 陽介(FURUKAWA Yosuke)さん(株)リクルートテクノロジーズでマネージャーとしてアプリ基盤の改善や運用、開発支援ツールの
日本のミスターインターネット、村井純さんが座長を務める「Trusted Web推進協議会」の資料がGitHubで公開されました! 経産省に続き、スマートでエンジニアにも優しい進め方がうれしいですね。 「Trusted Web 推進協議会の公開ドキュメント」 forked by Code for Sabae Markdownや、RDFなど人にも機械判読しやすくなるよう資料を書き直すプロジェクト、はじめました。 こちら元資料のPDFと、Markdown化した議事次第見比べてみてください。 # [Trusted Web 推進協議会](https://www.kantei.go.jp/jp/singi/digitalmarket/trusted_web/index.html) (第1回) ## 日時 令和2年10月15日 10:00-12:00 ## 場所 通信システムを用いた遠隔開催 ## 議事
ES6風Hashリテラルとは ここで言う「ES6風Hashリテラル」というのは、ES6(ES2015)でobject property shorthandとして導入された省略記法です。 最近のJavaScriptを使っている人なら見慣れた記法ですね。Rubyでもこういう風に書けると便利そう、と思う人はもちろんいるわけで、この記法を取り入れるべく過去にもbugs.ruby-lang.orgで提案がありました。が、残念ながら今のところrejectされたままです。 Feature #11105 ES6-like hash literals https://bugs.ruby-lang.org/issues/11105 Feature #15236 add support for hash shorthand https://bugs.ruby-lang.org/issues/15236 似た記法
#Thanks to Google sponsorship, I was able to go through webpack-merge↗ issues and add first-class support for TypeScript to it. I ended up dropping smart merging from the package as it became impossible to handle all the special cases related to it. Instead, there are now utilities that give you control over details. One last typing related issue↗ remains and it has something to do with the way we
今回は @Keisuke69が同僚の栗山さんをゲストに主にJavaScript周りの話をしています。音質に関しては依然として手探り。 (注1)なお、読み方について収録時はRyan Dahl自身がそう発音していたとのことからDenoの読み方はデノだって話をしていますが、その後コミュニティで正式な読み方はディノ(/di no/)に落ち着いたそうなので今後はディノが正しいです。 https://github.com/denoland/deno/issues/5707 Ryan Dahl自身もその後はディノと発音するようにしていました。 https://www.youtube.com/watch?v=1gIiZfSbEAE#t=20 フィードバックetc はぜひ #nanashipo でお願いします。 栗山さんの自己紹介(0:00)JS界隈で最近気になったこと(1:58)Next.jsIncrem
こんにちは。フロントエンドエキスパートの平野(@shisama_)です。 フロントエンドエキスパートチームでは業務時間の 30 % の時間で技術探究を行っています。 今回は探究した技術の中から Node.js の ES Modules(以下 ESM)についてと Dual Package (CommonJS/ES Modules) に対応した npm パッケージの開発について紹介します。 ES Modules の特徴 ESM はブラウザ互換 ESM は Strict モード ESM は非同期 ESM は静的解析可能 Node.js の ESM 対応について Dual Package(CJS/ESM)に対応した npm パッケージの開発 Conditional Exports によるファイルの指定 .mjs と .cjs require など CJS 特有の機能を使う ESMから CJS ファ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く