mcpField
S
syncfusion-javascript-common

syncfusion-javascript-common

github.com/syncfusion開発075 回インストール1 週間前に更新
リポジトリ

syncfusion-javascript-common について

Syncfusion JavaScript コントロールを使う開発者向けのスキルです。導入方法に加え、グローバル化、アニメーション、状態の永続化、ドラッグ&ドロップ、安全対策を扱います。

主な機能

  1. 01インストールとバンドラー設定
  2. 02ローカライズと国際化
  3. 03RTL、数値・日付の書式設定
  4. 04アニメーションとドラッグ&ドロップ
  5. 05状態の永続化とセキュリティ指針

活用シーン

  1. 01JavaScript アプリへの Syncfusion コントロール導入
  2. 02日付、時刻、通貨のローカライズ
  3. 03セッションをまたぐコントロール状態の保持
  4. 04アニメーションやドラッグ&ドロップの実装

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/syncfusion/javascript-ui-controls-skills --skill syncfusion-javascript-common

インストール後、Claude Code で/syncfusion-javascript-commonを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
advanced-features.md
appearance-and-theming.md
getting-started.md
globalization.md
licensing-and-upgrade.md

詳細

Syncfusion JavaScript コントロールの共通機能

Syncfusion JavaScript コントロールには、ユーザーエクスペリエンスを向上させ、異文化への対応を確実にし、すべてのコントロールで基盤となる機能を提供する包括的な共通ユーティリティと機能が含まれています。このスキルでは、堅牢な JavaScript アプリケーションを構築するためのインストール設定、アニメーション、グローバリゼーション、状態管理、セキュリティに関する考慮事項について説明します。

目次

ドキュメントとナビゲーションガイド

はじめにとインストール

📄 参照: references/getting-started.md

  • Webpack のセットアップ - Syncfusion コントロールを Webpack バンドラーに統合します
  • Electron のセットアップ - Electron デスクトップアプリケーションで Syncfusion コントロールを使用します
  • Cordova のセットアップ - Apache Cordova モバイルアプリにコントロールを統合します
  • Ionic のセットアップ - Ionic フレームワーク向けに Syncfusion コントロールを設定します
  • Meteor のセットアップ - Meteor.js アプリケーションでコントロールを設定します
  • SharePoint のセットアップ - SharePoint 環境に Syncfusion コントロールをデプロイします

グローバリゼーション

📄 参照: references/globalization.md

  • アラビア語、ヘブライ語、ペルシャ語向けの右から左(RTL)表示のサポート
  • 多言語対応のためのローカライズ(l10n)
  • CLDR データを使用した国際化(i18n)
  • 数値と通貨の書式設定
  • 日付と時刻の書式設定

高度な機能

📄 参照: references/advanced-features.md)

  • アニメーション効果(FadeIn、ZoomOut、SlideUp など)
  • アニメーションのタイミング(duration、delay、グローバル設定)
  • ドラッグ&ドロップ操作(Draggable、Droppable)
  • テンプレートのカスタマイズと最適化
  • enablePersistence による状態の永続化
  • セキュリティのベストプラクティスと HTML のサニタイズ

クイックスタート

Syncfusion JavaScript コントロールパッケージとテーマパッケージをインストールする
npm install @syncfusion/ej2-grids@latest @syncfusion/ej2-tailwind3-theme@latest --save

注: @syncfusion/ej2-base パッケージはすべての Syncfusion コントロールの依存関係にあり、Syncfusion JavaScript パッケージをインストールすると自動的にインストールされます。package.json ファイルに明示的に追加する必要はありません。

スタイルをインポートする
@import "../node_modules/@syncfusion/ej2-tailwind3-theme/styles/grid/index.css";
ライセンスキーを登録する

手順 1: 環境変数を設定します。

# Windows
setx SYNCFUSION_LICENSE "Your_License_Key_Here"

# Mac/Linux
export SYNCFUSION_LICENSE='Your_License_Key_Here'

手順 2: NPX コマンドを使用してライセンスを有効化します。

npx syncfusion-license activate

注: ほかのライセンス登録方法については、Syncfusion ライセンスキー登録ドキュメントを参照してください。

基本的なコントロールの設定
import { Grid, Page } from '@syncfusion/ej2-grids';

const data: Object[] = [
  { OrderID: 10248, CustomerID: 'VINET', Freight: 32.38 },
  { OrderID: 10249, CustomerID: 'TOMSP', Freight: 11.61 }
];

const grid: Grid = new Grid({
  dataSource: data,
  allowPaging: true,
  columns: [
    { field: 'OrderID', width: 100 },
    { field: 'CustomerID', width: 100 },
    { field: 'Freight', width: 100, format: 'C2' }
  ]
});

// Inject required services
Grid.Inject(Page);

grid.appendTo('#grid');
<div id="grid"></div>

共通機能

状態の永続化を有効にする
import { Grid } from '@syncfusion/ej2-grids';

const grid: Grid = new Grid({
  dataSource: data,
  enablePersistence: true
});

grid.appendTo('#grid');
RTL サポートを有効にする
import { enableRtl } from '@syncfusion/ej2-base';
import { ListView } from '@syncfusion/ej2-lists';

// Global RTL enablement
enableRtl(true);

// OR per-control
const listView: ListView = new ListView({
  enableRtl: true
});
listView.appendTo('#listview');
アニメーション効果を追加する
import { Animation } from '@syncfusion/ej2-base';

const element: HTMLElement | null = document.getElementById('element');

if (element) {
  const animation: Animation = new Animation({ 
    duration: 5000, 
    delay: 2000 
  });
  animation.animate(element, { name: 'FadeOut' });
}
ドラッグ&ドロップを実装する
import { Draggable, Droppable } from '@syncfusion/ej2-base';

const draggableElement: HTMLElement | null = document.getElementById('draggable');
const droppableElement: HTMLElement | null = document.getElementById('droppable');

if (draggableElement && droppableElement) {
  const draggable: Draggable = new Draggable(draggableElement, { 
    clone: false 
  });
  
  const droppable: Droppable = new Droppable(droppableElement, {
    drop: (e: DropEventArgs) => {
      if (e.droppedElement) {
        e.droppedElement.textContent = 'Dropped!';
      }
    }
  });
}
<div id="draggable">Drag me</div>
<div id="droppable">Drop here</div>

コメント