摘要:頁面顯示效果點擊編輯顯示效果由于項目頻繁修改相關(guān)信息,并多帶帶提交,為了方便,封裝了一個簡單的組件組件依賴用到了圖標和組件這不用可以省略組件寬高顯示為自適應(yīng)控制父級大小即可,類型可無限擴展輸入框修改組件接收參數(shù)展示內(nèi)容展示字體大小圖標顏色輸入
頁面顯示效果
點擊編輯顯示效果
由于項目頻繁修改相關(guān)信息,并多帶帶提交,為了方便,封裝了一個簡單的組件組件依賴antd(用到了圖標和Input組件這不用可以省略)組件寬高顯示為自適應(yīng)控制父級大小即可,類型可無限擴展
/**
輸入框修改組件接收參數(shù):
value: 展示內(nèi)容
fontSize: 展示字體大小
iconColor: 圖標顏色
inputWidth: 輸入框?qū)挾?默認100px
showSize: 最多顯示的字數(shù)
type: (string) number、url、可不傳不做限制
required: true為必填
amount: 字數(shù)最大限制
name: 為字段名
id: 需要的id
idName: id的字段名
handleDelete(): 刪除回調(diào)
handleOk(): 點擊對號回調(diào)
**/
調(diào)用代碼 /> 組件代碼: import React from "react"; export default class ChangeInput extends React.Component { } css代碼 .change_input{ } } } }fontSize="14px" //顯示字體大小
iconColor="#5f68ea" //鼠標滑過icon圖標顏色
inputWidth="400px" //輸入框?qū)挾龋叨茸赃m應(yīng)
showSize="30" //可展示字數(shù),溢出隱藏,滑過展示全部
amount="30" //字數(shù)限制長度
type="number" //可輸入類型
handleOk={this.handleOk} //點擊對號回調(diào)
value="17600381667" //傳入內(nèi)容
name="firmFax" //地段名
import {Icon, Input, message, Tooltip} from "antd";constructor(props) {
super(props);
this.state = {
showInput:false, //輸入框顯示隱藏
valueCon:"", //input框回顯字段
}
}
//點擊展示輸入框
handleChangeClick = () => {
this.setState({
showInput:true
})
};
//點擊關(guān)閉輸入框
handleCloseClick = () => {
this.setState({
showInput:!this.state.showInput
})
};
//去空格
trim = (str) => {
return str.replace(/^(s|u00A0)+/,"").replace(/(s|u00A0)+$/,"");
};
//點擊確定按鈕
handleAffirmClick = () => {
//判斷不為空
if(this.props.required&&this.trim(this.state.valueCon)===""||this.props.required&&this.trim(this.state.valueCon)==="-") {
message.error(`此字段不能為空及特殊字符"-"`);
return false
}
//判斷為數(shù)字
if(this.props.type&&this.props.type==="number"&&isNaN(this.trim(this.state.valueCon))) {
message.error(`請輸入數(shù)字`);
return false
}
//判斷網(wǎng)址
let reg=/^{2}[w-]+(([w-][w-s]*[w-]+[$$]?$)|([w-][$$]?$))/;
if(this.props.type&&this.props.type==="url"&&!reg.test(this.props.valueCon)){
message.error("這網(wǎng)址不是以http://https://開頭,或者不是網(wǎng)址!");
return false
}
//判斷字數(shù)長度
if(this.trim(this.state.valueCon).length>this.props.amount){
message.error(`字數(shù)不得超過${this.props.amount}個字`);
return false
}
//回調(diào)確定方法
let obj = {};
// obj.value = this.state.valueCon;
// obj.label = this.props.name;
obj[ this.props.name] = this.state.valueCon;
//判斷是否需要id
if(this.props.idName){
obj[this.props.idName] = this.props.id;
}
this.props.handleOk(obj);
//關(guān)閉輸入框
this.setState({
showInput:this.props.isShow
})
};
//input改變
handleChange = (e) => {
console.log(e.target.value);
this.setState({
valueCon:e.target.value
})
};
componentDidMount() {
this.setState({
valueCon:this.props.value,
})
}
handleDeleteClick = () =>{
let obj = {};
// obj.value = this.state.valueCon;
// obj.label = this.props.name;
obj[ this.props.name] = this.state.valueCon;
//判斷是否需要id
if(this.props.idName){
obj[this.props.idName] = this.props.id;
}
this.props.handleDelete(obj);
};
render() {
const {value,fontSize,iconColor,inputWidth,showSize} = this.props;
console.log(value)
return (
width: 100%;
//background: slateblue;
height: 100%;
overflow: hidden;
word-break: break-all;
.change_input_name{//float: left;
.change_input_hide_change{
margin-left: 5px;
cursor: pointer;
display: none;
}
&:hover{.change_input_name{
.change_input_hide_change{
display: inline-block;
}
}
}
.write_input{
height: 100%;
overflow: hidden;
.write_input_name{//height: 98%;
float: left;
.write_input_hide{height: 100%;
float: left;
//background: seagreen;
.write_input_hide_yes{
margin-left: 5px;
}
.write_input_hide_no{
margin-left: 5px;
}
//width: 100px;
}
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/114597.html
摘要:頁面顯示效果點擊編輯顯示效果由于項目頻繁修改相關(guān)信息,并單獨提交,為了方便,封裝了一個簡單的組件組件依賴用到了圖標和組件這不用可以省略組件寬高顯示為自適應(yīng)控制父級大小即可,類型可無限擴展輸入框修改組件接收參數(shù)展示內(nèi)容展示字體大小圖標顏色輸入 頁面顯示效果showImg(https://segmentfault.com/img/bVbspoH?w=300&h=222); 點擊編輯顯示效果...
摘要:屬性配置界面的定義了組件的初始大小,其他屬性都與組件大小調(diào)整時控制組件的大小相關(guān)。屬性由四個值組成,分別是水平策略垂直策略水平伸展和垂直伸展。屬性缺省值為空字符串。此屬性默認為空。是對屬性的補充說明。 目錄 1、界面組件 1.1、布局組件(Layouts) 1.2、分隔組件(Spacers)...
摘要:每個列表項始于標簽。由動作屬性定義的這個文件通常會對接收到的輸入數(shù)據(jù)進行相關(guān)的處理。標簽的屬性應(yīng)當與相關(guān)元素的屬性相同。姓名性別姓名性別單元格標簽可以定義表格中的一個單元格,表示一個單元格。 第一部分 HTML 第一章 職業(yè)規(guī)劃和前景 職業(yè)方向規(guī)劃定位: web前端開發(fā)工程師 web網(wǎng)站架構(gòu)師 自己創(chuàng)業(yè) 轉(zhuǎn)崗管理或其他 web前端開發(fā)的前景展望: 未來IT行業(yè)企業(yè)需求...
閱讀 2823·2023-04-25 22:51
閱讀 2073·2021-10-11 10:58
閱讀 3321·2019-08-30 10:49
閱讀 1886·2019-08-29 17:09
閱讀 3144·2019-08-29 10:55
閱讀 853·2019-08-26 10:34
閱讀 3504·2019-08-23 17:54
閱讀 993·2019-08-23 16:06