6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Riot@2.0.11 雑感

Last updated at Posted at 2015-02-23

Riotjs の 2.0.11 がリリースされました。

リリースノートはこちら -> https://muut.com/riotjs/release-notes.html#2-0-11-em-feb-23-2015-em-

リリースノートでは riot.mount, riot.mountTo, riot.unmount あたりのことが書いてあるんですが、僕としては 2.0.7 にエンバグされたコンポーネントに値が渡るときに遅延する問題がついに修正されたのが一番の朗報です!!!!!!!!

ちょっと前に自分で直そうと試行錯誤していたのですがいまいちどこが問題か特定できずに断念したので...。コミットログ追ってみると修正コミットはたぶん https://github.com/muut/riotjs/commit/2eecb48ebf5d2b112f25167bc8133c752454a8af がそれっぽいような気がするけど定かではないです。

それから、気付いた変更点としては 2.0.10 までは

some
  p(data='{ test }')
  script(type='text/coffeescript').
    @test = ['test1', 'test2', 'test3']

というようなコードで配列が toString されて展開されていたのが 2.0.11 だと属性がそのまま消滅する(追記を参照)ので注意が必要です。なので、お気付きとはおもいますが

some
  p(data='{ test.toString() }')
  script(type='text/coffeescript').
    @test = ['test1', 'test2', 'test3']

というような感じで明示的に toString してやれば同様の動きをします。ちなみに、これをやっているのは click のイベントハンドラで event.target.getAttribute('data').split(',') をするためなんですが、実装としては微妙な感じがするのでなんとかしたいなあとおもいつつ...。

追記(2/25)

コメントにもありますが

  • String: DOMと、optsに入る
  • Function: イベントハンドラ
  • Bool: DOMと、optsに入る
  • Object/Array: optsのみに入る

というような挙動をするようです。


その他トピックスとしては、プラグインシステムを作っているらしい(参照)だったり、CSS まわりが整理されそう(参照)といったあたりでしょうか。

これ言うの何度目かもう分からんぐらいですが、今度こそぼちぼち使えそうな感じだとおもうので引き続き使ってみていきたい所存です。

また、コンパイラ絡みの変更は特にないのであんまり対応することもなかったですが弊 gulp プラグインも既に対応済 (リポジトリ) ですのであわせてどうぞ。また、上記のバグで 2.0.7 で止めていた絵文字検索サービスemo(リポジトリ)もようやく 2.0.11 に上げられたので参考までに。

6
6
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?