最近リリースされたNativeScript 8は、公式のApple M1サポートと、webpack 5ビルドを特徴としている。NativeScript 8は、クリエイティブビュー開発用の新しいレイアウトコンテナと、box-shadow
とtext-shadow
の2つの新しいスタイリングプロパティをサポートしている。
NativeScript 8はwebpack5をサポートするようになった。リリースノートには、webpack4と比較して速度が2倍に向上したことが記載されている。
# cold run after ns clean (includes npm install, pod install etc.)
prepare ios 21.78s user 6.78s system 98% cpu 28.985 total
prepare ios 6.58s user 0.63s system 134% cpu 5.361 total
vs.
# cold run after ns clean (includes npm install, pod install etc.)
prepare ios 42.08s user 10.86s system 125% cpu 42.063 total
prepare ios 13.01s user 1.00s system 126% cpu 11.052 total
新しいRootLayoutコンテナはGridLayout
を拡張したものであり、新しいレイヤリングの可能性を提供する。リリースノートでは次のように説明されている。
新しいレイアウトコンテナはGridLayoutを拡張したものであり、[そして]強力で楽しい動的ビューの作成と階層化のための新しいAPIを提供する。
<RootLayout>
は、動的ビューレイヤーを簡単に制御するための組み込みAPIを備えたアプリ向けに、プライマリルートレイアウトコンテナとして使用するように設計されたレイアウトコンテナである。これはGridLayoutを拡張しているため、グリッドのすべての機能を備えているに加えて、追加のAPIで拡張されている。
新しいレイアウトには、たとえば、ビューを動的に開いたり、閉じたり、呼び出したりするAPIが含まれており、アニメーションにより設定可能である。
export class RootLayout extends GridLayout {
open(view: View, options?: RootLayoutOptions): Promise<void>;
close(view: View, exitTo?: TransitionAnimation): Promise<void>;
bringToFront(view: View, animated?: boolean): Promise<void>;
closeAll(): Promise<void>;
getShadeCover(): View;
}
開発者は、ボックスシャドウとテキストシャドウを使用できるようになった。これにより、NativeScriptで作成できるデザインが増える。ボックスシャドウのサポートは2015年に初めてリクエストされ、スタイリング機能に対するコミュニティの強い関心を示している。
完全なリリースノートは、コード例とともにオンラインで入手できる。NativeScriptコミュニティは、新しいリリースの主要な機能を紹介するサンプルアプリケーションを提供している。開発者は、次のようにNativeScript 8に移行できる。
npm i -g nativescript
ns migrate
NativeScriptは最近、インキュベーションプロジェクトとしてOpenJS foundationに参加した。そして、新しいガバナンスモデルを採用した。これはコミュニティの役割を強調するものである。OpenJS foundationは、jQuery、Node.js、webpack、Electronを含む32のオープンソースJavaScriptプロジェクトで構成されている。