在項目中如果涉及到金額等需要數字輸入且保持精度的情況下,由于輸入框是可以隨意輸入文本的,所以一般情況下可能需要監聽輸入框的change事件,然后通過正則表達式去替換掉不匹配的文本部分。
由于每次文本改變都會被監聽,包括替換文本也會被監聽,不止代碼冗雜,還容易浪費性能。那么此時我們可以利用餓了么的組件去完成這一個簡單的配置。
這里用的組件是InputNumber 計數器。
// :controls="false" 用于取消控制按鈕,讓輸入框保持純粹
// :precision="2" 控制保持兩位小數的精度
<el-input-number size="mini" v-model="scope.row.sl" :controls="false" :precision="2" ></el-input-number>
由于計數器的默認輸入是居中的,但是一般輸入的文本都是居左的,餓了么組件沒有提供這種屬性控制,所以可以從CSS樣式中入手。
::v-deep .el-input-number.is-without-controls .el-input__inner {text-align: left !important;
}
個人博客:蘇恩博客