cnd-components-mcp
Version:
An MCP service for Cnd components query | 一个减少 Cnd 组件代码生成幻觉的 MCP 服务,包含系统提示词、组件文档、API 文档、代码示例和更新日志查询
169 lines (155 loc) • 3.85 kB
Markdown
## 基本使用
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
return (
<div>
<CndResourceDisplay
resourceName="k8s-vswitch-c5ab8ae67d79b4774b3bd593cb3b4a886"
resourceId="vsw-bp1xi7ad8uw66xts8m3hw"
/>
<CndResourceDisplay
resourceId="vsw-bp1xi7ad8uw66xts8m3hw"
/>
</div>
);
};
export default Demo;
```
## 自定义 copyNameProps / copyIdProps
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
return (
<div>
<CndResourceDisplay
resourceName="k8s-vswitch-c5ab8ae67d79b4774b3bd593cb3b4a886"
resourceId="vsw-bp1xi7ad8uw66xts8m3hw"
copyNameProps={{
showIcon:true,
truncateProps:{
type: 'width',
threshold: 200
}
}}
copyIdProps={{
showIcon:true
}}
/>
</div>
);
};
export default Demo;
```
## 设置跳转链接 url
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
return (
<div>
<CndResourceDisplay
resourceName="k8s-vswitch-c5ab8ae67d79b4774b3bd593cb3b4a886"
resourceId="vsw-bp1xi7ad8uw66xts8m3hw"
url="https://cnd.alibaba.net/cnd-components/cn-instance"
/>
</div>
);
};
export default Demo;
```
## 自定义点击事件 onClick
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
return (
<div>
<CndResourceDisplay
resourceName="k8s-vswitch-c5ab8ae67d79b4774b3bd593cb3b4a886"
resourceId="vsw-bp1xi7ad8uw66xts8m3hw"
onClick={()=>{
alert('点击了')
}}
/>
</div>
);
};
export default Demo;
```
## showLinkIcon 不需要设置点击事件(onClick)或者跳转链接(url)就可以展示链接样式
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
return (
<div>
<CndResourceDisplay
resourceName="k8s-vswitch-c5ab8ae67d79b4774b3bd593cb3b4a886"
resourceId="vsw-bp1xi7ad8uw66xts8m3hw"
showLinkIcon={true}
/>
</div>
);
};
export default Demo;
```
## 自定义资源不存在时的报错提示
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
const vpcId = 'vpc-bp1vftj8wl2m8spfjsdqn'
return (
<div>
<CndResourceDisplay
resourceName="k8s-vswitch-c5ab8ae67d79b4774b3bd593cb3b4a886"
resourceId={vpcId}
showLinkIcon={true}
existConfig={{
product: 'vpc',
action: 'DescribeVpcs',
params: { VpcId: vpcId, RegionId: window.regionId },
message: <span>test</span>,
}}
/>
</div>
);
};
export default Demo;
```
## name不存在时查询name,并回显
```tsx preview
import React from "react";
import { CndResourceDisplay } from "@ali/cnd";
const Demo = () => {
const vpcId = 'vpc-bp1vftj8wl2m8spfjsdqn'
const renderFunc = (res) => {
const { Vpcs } = res;
let vpcItem = {};
Array.isArray(Vpcs.Vpc) && (vpcItem = Vpcs.Vpc[0]);
return vpcItem.VpcName;
}
return (
<div>
<CndResourceDisplay
resourceId={vpcId}
showLinkIcon={true}
existConfig={{
product: 'vpc',
action: 'DescribeVpcs',
params: { VpcId: vpcId, RegionId: window.regionId },
message: <span>test</span>,
}}
renderNameConfig={{
display: true,
renderFunc: renderFunc
}}
/>
</div>
);
};
export default Demo;
```