计算器
安装
npm i @cloud-ru/uikit-product-calculator
示例
import { Calculator as CalculatorUi, CALCULATOR_TYPE } from '@cloud-ru/uikit-product-calculator';
const onDownloadFileClick = getOnDownloadFileClick();
const onShareClick = getOnShareClick();
const fetcherFn = getFetcherFn();
const config = { ...CATALOG_CONFIG, platforms: [ADVANCED_PLATFORM, VM_WARE_PLATFORM] };
export function Calculator() {
return (
<CalculatorUi
config={config}
layoutType={layoutType}
calculatorType={CALCULATOR_TYPE.Partners}
initialActiveProduct={ADVANCED_PRODUCT.AdvancedCloudServer}
fetcherFn={fetcherFn}
actions={{
onDownloadFileClick,
onShareClick,
}}
/>
);
}
计算器
道具
| 名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| 行动* | { onPlatformSelect?(platform: string): void; onProductSelect?(productId: string): void; onProductDelete?(productId: string): void; onStartClick?(): void; onCatalogOpen?(): void; onConnectClick?(id: string, value: FormValues): void; onShareClick?(state: State): Promise<...>; onDownloadFileClick?(state: State): Promis... | - 说吧 | {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 |
| 拾取器Fn* | FetcherFn | - 说吧 | {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 |
| 配置* | CatalogConfig | - 说吧 | 页:1 |
| 布局类型 | enum 布局类型 : "mobile", (中文(简体) ), "tablet", (中文(简体) ), "desktop", (中文(简体) ), "desktopSmall" | 桌面 | Тип |
| 计算器Type | enum 计算器Type : "test", (中文(简体) ), "main", (中文(简体) ), "partners", (中文(简体) ), "product", (中文(简体) ), "additional" | 主要 | Тип |
| 分析点 | (clickContent: string, uniqueId: string) => void | - 说吧 | {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 |
| 图像 | string | - 说吧 | {\fn黑体\fs20\shad2\2aH82\3aH20\4aH33\fscx95\3cH592001\be1}♪#################################################################################################################################################################################################################################### |
| 初始产品 | string | - 说吧 | Id # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # |
| 状态 | Record<string, ProductState[]> | - 说吧 | {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 |
| 页脚 | ReactNode | - 说吧 | 节点 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # |
| □ 主语 | |||
| # # # # # # # / 计算器 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 搭档 | |||
| ================================================================================================== | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 额外的 | |||
| {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 平台 | |||
| Платформы | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □产品 | |||
| Продукты | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □目录 | |||
| Каталог | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 编号 | |||
| 编号 | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 图标 | |||
| Иконка | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □标签 | |||
| Название | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 说明 | |||
| Дополнительное | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 访问 | |||
| {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| □ 数据测试 | |||
| 数据测试编号 | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| ∮在克力克上∮ | |||
| {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 | |||
| ++ Propals 软件 | |||
| 名称 | 类型 | 默认值 | 说明 |
| - -- - -- | - -- - -- | - | - |
| 翻译@1110* | () => StringIterator<string> | - 说吧 | 显示器 |
| 给好机会* | () => string | - 说吧 | 返回一个字符串,该字符串中所有被Unicode替换字符(U+FFFD)所取代的独行或出行代用符. |
| 时机良好* | () => boolean | - 说吧 | 如果所有前导代位和后导代位出现对齐并有序,则返回真实. |
| 现职* | (index: number) => string | - 说吧 | 返回由位于指定索引的单一UTF-16代码单位组成的新字符串。 @ param 索引 理想代码单元的零基索引. 一个负索引将从最后一个项目中算回来 . |
| 全部替换* | { (searchValue: string | RegExp, replaceValue: string): string; (searchValue: string | RegExp, replacer: (substring: string, ...args: any[]) => string): string; } | - 说吧 | 使用正则表达式或搜索字符串替换字符串中子字符串的所有实例。 @ param searchValue A 字符串需要搜索 。 @param 替换包含文本的 Vale A 字符串, 以替换此字符串中每次成功匹配的搜索值 。 @ param searchValue A 字符串需要搜索 。 @param 替换器 A 函数返回替换文本 . |
| 全部匹配* | (regexp: RegExp) => RegExpStringIterator<RegExpExecArray> | - 说吧 | 将字符串与正则表达式相匹配,并返回包含搜索结果的匹配符。 @param regexp 包含正则表达式图案和旗帜的可变名称或字符串字元. |
| 修饰权利* | () => string | - 说吧 | 从字符串中去掉后面的白空格和行终止字符。 @ depressated 浏览器兼容性的一个后遗症功能. 使用 trimEnd 换成 |
| 四分卫* | () => string | - 说吧 | 从字符串中去除主白空格和行终止字符。 @ depressated 浏览器兼容性的一个后遗症功能. 使用 trimStart 换成 |
| 三进制开始* | () => string | - 说吧 | 从字符串中去除主白空格和行终止字符. |
| 三进制* | () => string | - 说吧 | 从字符串中去掉后面的白空格和行终止字符. |
| 尾声 * | (maxLength: number, fillString?: string) => string | - 说吧 | 用给定的字符串来支撑当前字符串(可能重复),这样所产生的字符串就可以达到给定的长度. 粘贴从当前字符串的端( 右) 应用 。 @ param 最大连线 一旦当前字符串被加成后,所产生的字符串的长度会增加. 如果此参数小于当前字符串的长度,则当前字符串将按原样返回. @ param 填充图 用来固定当前字符串的字符串 。 如果此字符串太长, 将会被截取并应用最左边的部分 。 此参数的默认值为 " (U+0020). |
| 启动 * | (maxLength: number, fillString?: string) => string | - 说吧 | 用给定的字符串来支撑当前字符串(可能重复),这样所产生的字符串就可以达到给定的长度. 从当前字符串的起( 左) 开始应用 。 @ param 最大连线 一旦当前字符串被加成后,所产生的字符串的长度会增加. 如果此参数小于当前字符串的长度,则当前字符串将按原样返回. @ param 填充图 用来固定当前字符串的字符串 。 如果此字符串太长, 将会被截取并应用最左边的部分 。 此参数的默认值为 " (U+0020). |
| 苏普* | () => string | - 说吧 | 回返a <sup> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 子项* | () => string | - 说吧 | 回返a <sub> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 罢工* | () => string | - 说吧 | 回返a <strike> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 小型* | () => string | - 说吧 | 回返a <small> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 链接* | (url: string) => string | - 说吧 | 返回 a <a> HTML 元素并设置href 属性值@ depressed 浏览器相容性的遗留特性 |
| 斜体* | () => string | - 说吧 | 返回 a <i> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 字体大小* | { (size: number): string; (size: string): string; } | - 说吧 | 回返a <font> HTML 元素和设置大小属性值 @ depressed 浏览器兼容性的后遗症特征 @ depressed 浏览器兼容性的后遗症特征 |
| 字体颜色* | (color: string) => string | - 说吧 | 回返a <font> HTML 元素和设置颜色属性值@ depressed 浏览器兼容性的遗留特性 |
| 固定* | () => string | - 说吧 | 回返a <tt> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 粗体* | () => string | - 说吧 | 回返a <b> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 闪烁* | () => string | - 说吧 | 回返a <blink> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 大块* | () => string | - 说吧 | 回返a <big> HTML 元素 @ depressated 浏览器兼容性遗留特性 |
| 锚* | (name: string) => string | - 说吧 | 返回 a <a> HTML 锚定元素并设置文本值的名称属性@ depressated 浏览器兼容性的一个遗留特性@param name |
| 启动时间* | (searchString: string, position?: number) => boolean | - 说吧 | 如果转换为字符串的搜索元素序列与此对象的相应元素相同(转换为字符串),则返回真. 否则,返回假. |
| 重复 * | (count: number) => string | - 说吧 | 返回一个字符串值,该数值取自附加的计数副本。 如果数为 0,则返回空字符串。 @ param 附加的复制件数 |
| 恢复正常* | { (form: "NFC" | "NFD" | "NFKC" | "NFKD"): string; (form?: string): string; } | - 说吧 | 返回按Unicode标准附件#15,Unicode Normalization表格所指定的表格命名的将字符串正常化的字符串值。 @param窗体 适用值:"NFC","NFD","NFKC",或"NFKD",如果未指定默认为"NFC" @param窗体 适用值:"NFC","NFKC",或"NFKD",如果未指定默认为"NFC" |
| 结束于 * | (searchString: string, endPosition?: number) => boolean | - 说吧 | 如果转换为字符串的搜索元素序列与从 endPosition – 长度( 此) 开始的此对象的相应元素( 转换为字符串) 相同, 则返回真值 。 否则,返回假. |
| 包括* | (searchString: string, position?: number) => boolean | - 说吧 | 如果搜索串显示为将对象转换为字符串的结果的子字符串,则返回真;在一个或多个位置大于或等于位置;否则,返回假。 @ param search 搜索串@ param 位置 如果位置未定义,则假定为 0,以便搜索所有字符串 . |
| 代码点 | (pos: number) => number | - 说吧 | 返回一个小于1114112 (0x110000)的非负整数,该整数是从字符串中位置 pos 的字符串元素起的 UTF-16 编码代码点的代码值,由将该对象转换为字符串所产生。 如果该位置没有元素,则结果没有定义. 如果有效的UTF-16替代对不从 pos 开始,结果就是 pos 的代码单位. |
| 子字符串 * | (from: number, length?: number) => string | - 说吧 | 获得从指定位置开始并具有指定长度的子字符串。 @ depressed 浏览器兼容性的一个后遗症功能 @param 从想要的子字符串的起步位置. 字符串中第一个字符的索引为0. @ param 长度 返回子字符串中要包含的字符数 . |
| 长度* | number | - 说吧 | 返回字符串对象的长度. |
| 修饰* | () => string | - 说吧 | 从字符串中删除正后方的白空格和行名字符. |
| 切换到本地端 | { (locales?: string | string[]): string; (locales?: LocalesArgument): string; } | - 说吧 | 返回一个字符串,将所有字母字符转换为大写,同时考虑到主机环境的当前地块. |
| 到上册* | () => string | - 说吧 | 将字符串中的所有字母字符转换为大写. |
| 切换到本地下层文件* | { (locales?: string | string[]): string; (locales?: LocalesArgument): string; } | - 说吧 | 将所有字母化字符转换为小写,同时考虑到主机环境当前的地块. |
| 切换到小写* | () => string | - 说吧 | 将字符串中的所有字母字符转换为小写. |
| 子字符串* | (start: number, end?: number) => string | - 说吧 | 返回字符串对象内指定位置的子字符串。 @ param 开始 表示子字符串开始的零基指数. @param end 零基指数表示子弦的结束. 子字符串包括最高(但不包括)端所显示的字符. 如果删除了结尾,则返回从起始到原字符串结尾的字符. |
| 拆分 * | { (separator: string | RegExp, limit?: number): string[]; (splitter: { [Symbol.split](string: string, limit?: number): string[]; }, limit?: number): string[]; } | - 说吧 | 使用指定的分隔符将字符串拆分为子字符串,并作为数组返回。 @param 分隔符 A 字符串,用于识别字符串的分隔符。 如果省略,则返回包含整个字符串的单元素数组。 @param 限制 A 用于限制数组中返回元素的数量 。 @ param 分解器 能够分割字符串的对象。 @param 限制 A 用于限制数组中返回元素的数量 . |
| 切开* | (start?: number, end?: number) => string | - 说吧 | 返回字符串的一节。 @ param 开始 字符串Obj指定部分的起始索引。 @param end 索引到字符串Obj指定部分的结尾. 子字符串包括最高(但不包括)端所显示的字符. 如果不指定该值,子字符串会持续到字符串Obj的结尾. |
| 搜索 * | { (regexp: string | RegExp): number; (searcher: { [Symbol.search](string: string): number; }): number; } | - 说吧 | 在正则表达式搜索中查找第一个子字符串匹配。 @ param regexp 正则表达式图案和可适用的旗帜. @ param 搜索器 支持在字符串内搜索的对象. |
| 替换* | { (searchValue: string | RegExp, replaceValue: string): string; (searchValue: string | RegExp, replacer: (substring: string, ...args: any[]) => string): string; (searchValue: { ...; }, replaceValue: string): string; (searchValue: { ...; }, replacer: (substring: string, ...args: any[]) => string): string; } | - 说吧 | 在字符串中替换文本,使用正则表达式或搜索字符串。 将字符串和 QQlinkcode 替换为 Vale} 传给 [Symbol.replace] 在QQlinkcode 搜索Value 上的方法 这种方法预计会执行自己的替换算法. 在字符串中替换文本,使用支持在字符串中替换的对象。 @param searchValue A 字符串或要搜索的正则表达式 。 @param 替换包含要替换文本的Value A字符串 。 当 QQlinkcode 搜索 Value 是一个 RegExp中,如果 g 设置了旗帜(或只有开头的匹配,如果 y 旗帜也存在). 否则,只替换了"QQlinkcode searchValue"的第一个匹配. @ param searchValue A 字符串需要搜索 。 @param 替换器 A 函数返回替换文本 。 @ param 搜索值 支持在字符串中搜索和替换匹配对象的对象。 @ param 替换值 取而代之的文字. @param searchValue A 对象可以在字符串内搜索并替换匹配. @param 替换器 A 函数返回替换文本 . |
| 匹配* | { (regexp: string | RegExp): RegExpMatchArray; (matcher: { [Symbol.match](string: string): RegExpMatchArray; }): RegExpMatchArray; } | - 说吧 | 将字符串与正则表达式相匹配,并返回包含搜索结果的数组。 匹配支持匹配的字符串或对象,并返回包含搜索结果的数组,如果没有匹配,则无效。 @param regexp 包含正则表达式图案和旗帜的可变名称或字符串字元. @ param 匹配器 一个支持匹配的对象. |
| 语言比较* | { (that: string): number; (that: string, locales?: string | string[], options?: CollatorOptions): number; (that: string, locales?: LocalesArgument, options?: CollatorOptions): number; } | - 说吧 | 确定两个字符串在当前区域中是否等同。 确定当前或指定区域中两个字符串是否等同。 @ param 字符串用于比较目标字符串 @ param 字符串用于比较目标字符串 @ param locales A locale 字符串或包含一种或多种语言或地语标记的数组地语字符串. 如果您包含多个语言字符串, 请按优先级的下行顺序列出, 以便第一个条目是首选语言 。 如果您省略了此参数, 则使用 JavaScript 运行时间的默认语言 。 该参数必须符合BCP 47标准;参见Intl. 详细整理对象 。 @ param 选项 包含一个或多个属性的指定比较选项的对象。 见入道. 详细整理对象 。 @ param 字符串用于比较目标字符串 @ param locales A locale 字符串或含有一种或多种语言或locale 标记的数组 . 如果您包含多个语言字符串, 请按优先级的下行顺序列出, 以便第一个条目是首选语言 。 如果您省略了此参数, 则使用 JavaScript 运行时间的默认语言 。 该参数必须符合BCP 47标准;参见Intl. 详细整理对象 。 @ param 选项 包含一个或多个属性的指定比较选项的对象。 见入道. 详细整理对象 . |
| 上个索引* | (searchString: string, position?: number) => number | - 说吧 | 返回字符串中最后一个子字符串的出错。 @ param 搜索结构 下弦去寻取. @ param 立场 开始搜索的索引 。 如果省略,则搜索从字符串末尾开始. |
| 指数* | (searchString: string, position?: number) => number | - 说吧 | 返回子串第一次出现的位置。 @ param 搜索结构 字符串中要搜索的子字符串@ param 位置 开始搜索字符串对象的索引 。 如果省略,则从字符串开头开始搜索. |
| 骗取* | (...strings: string[]) => string | - 说吧 | 返回包含两个或两个以上字符串接合的字符串。 @ param 字符串 附加到字符串末尾的字符串 . |
| 字符代码At* | (index: number) => number | - 说吧 | 返回指定位置字符的Unicode值。 @ param 索引 理想字符的零基索引. 如果指定索引中没有字符,则返回NaN. |
| 字符目录* | (pos: number) => string | - 说吧 | 返回指定索引中的字符。 @param pos 想要的字符的零基索引 . |
| 倒数 | () => string | 函数到String () { [本地代码]} | 返回字符串的字符串表示式. |
| 值 | () => string | 函数值Of(){ [本地代码]} | 返回指定对象的原始值. |
| □ 得到下载文件 | |||
helper |
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
打开ShareClick
道具
| 名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| 后端空间 | string | 'https://api.cloud.ru' (英语) | |
| 基数Url | string | "https://cloud.ru" (中文(简体) ) | |
| □得到费奇芬 | |||
helper |
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
获取初始化
helper
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢