JSXはspread演算子で<Foo a={a} b={b}>を<Foo {...{a, b}}>で書ける
![JSXはspread演算子で<Foo a={a} b={b}>を<Foo {...{a, b}}>で書ける](https://cdn-ak-scissors.b.st-hatena.com/image/square/19002f85534d3d26f2785daea2c64b81b616928e/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fzenn%2Fimage%2Fupload%2Fs--OxqcdEk9--%2Fc_fit%252Cg_north_west%252Cl_text%3Anotosansjp-medium.otf_55%3AJSX%2525E3%252581%2525AFspread%2525E6%2525BC%252594%2525E7%2525AE%252597%2525E5%2525AD%252590%2525E3%252581%2525A7%25253CFoo%252520a%25253D%25257Ba%25257D%252520b%25253D%25257Bb%25257D%25253E%2525E3%252582%252592%25253CFoo%252520%25257B...%25257Ba%25252C%252520b%25257D%25257D%25253E%2525E3%252581%2525A7%2525E6%25259B%2525B8%2525E3%252581%252591%2525E3%252582%25258B%252Cw_1010%252Cx_90%252Cy_100%2Fg_south_west%252Cl_text%3Anotosansjp-medium.otf_37%3Aterrierscript%252Cx_203%252Cy_121%2Fg_south_west%252Ch_90%252Cl_fetch%3AaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyL2RhNzJjMjE0Y2QuanBlZw%3D%3D%252Cr_max%252Cw_90%252Cx_87%252Cy_95%2Fv1627283836%2Fdefault%2Fog-base-w1200-v2.png)
Powered by GatsbyStarting from v2, Docz is entirely built using GatsbyJS. It's optimised for a lightning fast development experience and speedy build times. This also allows you to leverage GatsbyJS's huge ecosystem of plugins and tools. Zero configNo need to worry about complex configuration settings to build and run your documentation. With Docz you can create customizable sites with a single co
Today we’re excited to announce and get some early feedback with TypeScript 2.8’s Release Candidate. To get started with the RC, you can access it through NuGet, or use npm with the following command: You can also get editor support by Downloading for Visual Studio 2015 (with Update 3) Downloading for Visual Studio 2017 (for version 15.2 or later) Following directions for Visual Studio Code and Su
TypeScriptでReactを扱ってるときにReactDOM.renderで意味が分からない型エラーが起きることがあります。 TS2605: JSX element type 'GithubPicker' is not a constructor function for JSX elements. Types of property 'render' are incompatible. Type '() => ReactNode' is not assignable to type '{ (): ReactNode; (): false | Element | null; }'. Type 'ReactNode' is not assignable to type 'false | Element | null'. Type 'undefined' is not assignable
いきなり結論を書くと、idやclassはスタイルのためのものなので、テストでそれを使うのはやめましょう。そして、カスタムデータ属性を使いましょう。(idやclassはスタイルのためだけではないという意見はごもっともです!しかし、主にとしてスタイルに使われるということでご了承頂いて以下の駄文に付き合って頂けると幸いです🙇) 先に断っておくと主にreactについての話で、JSXを前提とします。(手法はReactに限りませんが理由は後述) 2020/03/23 追記 この記事は1年以上前に書かれた記事なのでテストフレームワークとしてenzymeを使っていますが、現時点ではTesting Libraryの使用をオススメします。data-testid に対応するクエリを備えています。 React Testing Library · Testing Library はじめに ご存知の通り、ロジックと
The document discusses virtual DOM implementations. It explains that virtual DOM is used to more efficiently update the real DOM by maintaining a virtual representation of the DOM and only updating the real DOM with necessary changes. It provides examples of how virtual DOM libraries like React and Fuel work under the hood by using techniques like DOM diffing algorithms and caching to improve perf
はじめに どうも、 @Quramy です。 前回の投稿から随分日が経ってしまいましたが、この投稿はある意味で前回投稿の続編的な内容になります。 今日はTypeScript 2.3から導入されるLanguage Service Extensibilityと呼ばれている機能についてまとめてみようと思います1。 どのような変更なのか TypeScript Roadmapのリンクを辿っても、https://github.com/Microsoft/TypeScript/pull/12231 に行き着くだけで、パッと見は何の機能なのかよく分かりません。 このPRの実装を眺めると、次の機能が見えてきます。 tsconfig.jsonのcompilerOptionsに"plugins"というキーが追加されている pluginsに指定した内容は、TypeScript本体からresolveされる すなわち、
Today I am announcing prettier, a JavaScript formatter inspired by refmt with advanced support for language features from ES2017, JSX, and Flow. Prettier gets rid of all original styling and guarantees consistency by parsing JavaScript into an AST and pretty-printing the AST. Unlike eslint, there aren't a million configuration options and rules. But more importantly: everything is fixable. I'm exc
この記事は、React.js Advent Calendar 2015の24日目の記事であり、 8月よりReactとReduxで既存システムの置き換えを行った、私の苦労話です。 簡単に対象のシステムを紹介するとこんな感じです。 約50機能のシステム PCブラウザで見ることが前提 サーバサイドも置き換えをする(実装言語はGo) フロントもサーバサイドも自分がやる この記事には以下の内容は含まれません。 Reactの使い方 Reduxの使い方 すごくかっこいいこと それでは全ての始まった8月より始めます。 8月 その前にReact/Reduxを選んだわけ みなさんご存知の通り、React以外にも、UI向けのライブラリはいくつかあります。今回もReact以外にAngularJS、Angular2、Mithril、Riotが候補に上がっていました。 しかしAngularJSはAngular2が発表
はじめに 以前、React JSX with TypeScript(1.6)にて書いたことがありますが、TypeScript 1.6以降ではReact JSXを直接コンパイルできるオプションが追加されています。 一般的にクライアントサイドWebアプリ開発は以下の3言語が土台ですが、 JavaScript HTML CSS TypeScriptのお陰で、1.と2.についてはタイプセーフな世界を手に入れたことになります(HTMLの要素名や属性名まで含めて、コンパイル時のチェックがされる) JavaScript -> TypeScript HTML -> React JSX(.tsx) CSS -> ??? こうなると、3. におけるCSSについても、何とかできんものかと期待するのが人情です。 今回のエントリは、CSS ModulesをTypeScript JSX環境に統合することで、タイプセー
2015/10/29 に JavaScript の Transpiler である Babel の 6.0.0 がリリースされた。 6.0.0 Released これまでの Babel はデフォルトで ES6 と React JSX 変換に対応していたが、これからはプラグイン化されたものを指定する形式になるのだという。Browserify 用 Babel の babelify も同様で、これを最新に更新してコンパイルを実行すると ES6 部分が SyntaxError になる。 $ npm run build:js-main > electron-starter@1.0.4 build:js-main .../examples-electron/electron-starter > browserify -t babelify ./src/js/main/Main.js --im --no-
先日、とりあえずEmacsでESLintを使う環境を作ってみましたが。 umi-uyura.hatenablog.com チェック内容を設定しておかないと意味がないので、基本的なものだけでも設定しておこうと思い、調べてみました。 設定ファイル雛形の生成 そもそも、これまでESLintの導入まで至らなかったのは、設定項目が多すぎて、使うまで時間がかかりそうという印象があったからでした。 ところが、どうやら.eslintrcの雛形を生成してくれる機能がESLintにはあるもよう。 eslint --init を実行すると、ウィザード形式で.eslintrcを生成できます。 $ eslint --init ? What style of indentation do you use? Spaces # インデントのスタイルはスペース ? What quotes do you use for st
We're excited to announce that ESLint v6.0.0 has been released: https://t.co/EO4ZrZIMYM — ESLint (@geteslint) 2019年6月22日 ESLint は JavaScript のための静的検証ツールです。コードを実行する前に明らかなバグを見つけたり、括弧やスペースの使い方などのスタイルを統一したりするのに役立ちます。同様のツールとしては JSLint, JSHint 等があります。 ESLint の特色は、 すべての検証ルールを自由に on/off できる 自分のプロジェクトに合わせたカスタムルールを簡単に作れる 豊富なビルトイン ルール (5.0.0 時点で 260 個) に加えて、たくさんのプラグインが公開されている ECMAScript 2015 (ES6), 2016, 201
皆さんこんにちは。adingoにてFluctという広告配信システムの管理画面を中心にクライアントサイドの開発を行っております、大関です。 今回は、表題の通り、実際にプロダクトとして動いている既存のコードベースを、ES5ベースからTypeScriptに段階的に移行させた話について書こうと思います。 移行前のコードベース及び直面した課題 今年の1月頃から、アプリケーションのクライアント側の一部を、以下の構成で実際に開発しています。 言語 ECMAScript 5 主要な依存ライブラリ UI開発にReactおよびFacebook JSX syntax 統合イベントシステムとしてのRxJS テストコードのアサーションにpower-assert ビルドチェーン モジュール連結にbrowserify 環境変数に基づくビルドフラグ用途でenvify コードの解析とLintにESLint 未使用変数や未定
プログラミング言語は世の中にたくさんありますし、用途や好みによって自由に使えることが多いのですが、一部どうしても置き換えができない言語というものがあります。ブラウザやFlashマクロやPhotoshopマクロのJavaScript、Action Script、GPUのシェーダ言語、Visual Basic for Application、SQLなどなどです。それでもaltJSやORMなど、直接書かないという選択肢もあったりもしますが、どうしても直接書くほうが実行効率が良かったりチューニングが効いたりします。 JavaScriptを使ったコーディングを何年かやっていると、C言語で書かれたアルゴリズムをJavaScriptに移植しないといけない事態に遭遇する機会も増えてくると思いますので、それについて説明します。 整数型としてデータを扱う JavaScriptの言語仕様ではJavaScript
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く