import{ax as l,al as t,z as p,A as e,B as i,R as h,b5 as r,O as a,J as k}from"./chunks/framework.V2ssSR2R.js";const B=JSON.parse('{"title":"Link 链接","description":"","frontmatter":{},"headers":[],"relativePath":"form-config/fields/link.md","filePath":"form-config/fields/link.md"}'),d={name:"form-config/fields/link.md"};function g(E,s,F,y,A,C){const n=t("demo-block");return e(),p("div",null,[s[2]||(s[2]=i("h1",{id:"link-链接",tabindex:"-1"},[a("Link 链接 "),i("a",{class:"header-anchor",href:"#link-链接","aria-label":"Permalink to “Link 链接”"},"​")],-1)),s[3]||(s[3]=i("p",null,"用于显示,不可编辑",-1)),s[4]||(s[4]=i("h2",{id:"基础用法",tabindex:"-1"},[a("基础用法 "),i("a",{class:"header-anchor",href:"#基础用法","aria-label":"Permalink to “基础用法”"},"​")],-1)),h(n,{type:"form",config:[{type:"link",name:"link",text:"链接",href:"https://tencent.github.io/tmagic-editor/playground/index.html#/"}]},{source:k(()=>[...s[0]||(s[0]=[i("p",null," 通过配置 href,点击链接可跳转到指定地址。 ",-1)])]),_:1}),s[5]||(s[5]=i("h2",{id:"打开表单",tabindex:"-1"},[a("打开表单 "),i("a",{class:"header-anchor",href:"#打开表单","aria-label":"Permalink to “打开表单”"},"​")],-1)),h(n,{type:"form",config:[{type:"link",name:"link",text:"链接",form:[{name:"text",text:"input"}]}]},{source:k(()=>[...s[1]||(s[1]=[i("p",null," 通过配置 form,点击链接打开一个弹窗表单进行编辑。 ",-1)])]),_:1}),s[6]||(s[6]=r(`

Input Attributes

参数说明类型可选值默认值
name绑定值string
text表单标签string

配置类型

查看 LinkConfig 配置类型定义
ts
export interface LinkConfig<T = never> extends FormItem {
  type: 'link';
  href?: string | ((model: Record<string, any>) => string);
  css?: {
    [key: string]: string | number;
  };
  disabledCss?: {
    [key: string]: string | number;
  };
  formTitle?: string;
  formWidth?: number | string;
  displayText?:
    | ((
        mForm: FormState | undefined,
        data: {
          model: Record<any, any>;
        },
      ) => string)
    | string;
  form:
    | FormConfig<T>
    | ((
        mForm: FormState | undefined,
        data: {
          model: Record<any, any>;
          values?: Readonly<FormValue> | null;
          formValue?: FormValue;
        },
      ) => FormConfig<T>);
  fullscreen?: boolean;
}
ts
export interface FormItem {
  /** vnode的key值,默认是遍历数组时的index */
  __key?: string | number;
  /** 表单域标签的的宽度,例如 '50px'。支持 auto。 */
  labelWidth?: string | number;
  /** label 标签的title属性 */
  labelTitle?: string;
  className?: string;
  /** 字段名 */
  name?: string | number;
  /** 额外的提示信息,和 help 类似,当提示文案同时出现时,可以使用这个。 */
  extra?: string | FilterFunction<string>;
  /** 配置提示信息 */
  tooltip?: ToolTipConfigType | FilterFunction<ToolTipConfigType>;
  /** 是否置灰 */
  disabled?: boolean | FilterFunction;
  /** 使用表单中的值作为key,例如配置了text,则使用model.text作为key */
  key?: string;
  /** 是否显示 */
  display?: boolean | 'expand' | FilterFunction<boolean | 'expand'>;
  /** 值发生改变时调用的方法 */
  onChange?: OnChangeHandler;
  /** label 标签的文本 */
  text?: string | FilterFunction<string>;
  /** 右侧感叹号 */
  tip?: string;

  filter?: 'number' | OnChangeHandler;
  /** 是否去除首尾空格 */
  trim?: boolean;
  /** 默认值 */
  defaultValue?: any | DefaultValueFunction;
  /** 表单验证规则 */
  rules?: Rule[];
  extensible?: boolean;
  dynamicKey?: string;
  /** 是否需要显示\`展开更多配置\` */
  expand?: boolean;
  style?: Record<string, any>;
  fieldStyle?: Record<string, any>;
  labelPosition?: 'top' | 'left' | 'right';
}
`,4))])}const c=l(d,[["render",g]]);export{B as __pageData,c as default};