symref
Version:
Static code checker for AI code agents (Windsurf, Cline, etc.)
43 lines • 1.62 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import React, { Component, PureComponent } from 'react';
// パターン1: 基本的なクラスコンポーネント
class BasicClassComponent extends React.Component {
render() {
return _jsx("div", { children: "Basic Class Component" });
}
}
// パターン2: PureComponent継承
class PureClassComponent extends React.PureComponent {
render() {
return _jsx("div", { children: "Pure Class Component" });
}
}
// パターン3: プロパティ指定なしComponent継承
class ShorthandComponent extends Component {
render() {
return _jsx("div", { children: "Shorthand Component" });
}
}
// パターン4: プロパティ指定なしPureComponent継承
class ShorthandPureComponent extends PureComponent {
render() {
return _jsx("div", { children: "Shorthand Pure Component" });
}
}
class TypedClassComponent extends React.Component {
constructor(props) {
super(props);
this.state = { count: 0 };
}
render() {
return (_jsxs("div", { children: ["Hello, ", this.props.name, "! Count: ", this.state.count] }));
}
}
// パターン6: renderメソッドのみを持つクラス(明示的に継承はしていない)
class RenderOnlyClass {
render() {
return _jsx("div", { children: "This has render method but doesn't extend React.Component" });
}
}
export { BasicClassComponent, PureClassComponent, ShorthandComponent, ShorthandPureComponent, TypedClassComponent, RenderOnlyClass };
//# sourceMappingURL=ClassComponentPatterns.test.js.map