提交 6323dffd 编写于 作者: 雪洛's avatar 雪洛

feat: input组件示例页面focus适配小程序

上级 35bf967c
...@@ -140,7 +140,7 @@ ...@@ -140,7 +140,7 @@
<text class="uni-title-text">设置输入框聚焦时光标的位置(点这里)</text> <text class="uni-title-text">设置输入框聚焦时光标的位置(点这里)</text>
</view> </view>
<view class="input-wrapper"> <view class="input-wrapper">
<input ref="input" class="uni-input" value="0123456789" :cursor="cursor" @blur="onCursorBlurChange" /> <input ref="input" class="uni-input" value="0123456789" :focus="cursorInputFocus" :cursor="cursor" @blur="onCursorBlurChange" />
</view> </view>
</view> </view>
...@@ -150,7 +150,7 @@ ...@@ -150,7 +150,7 @@
</view> </view>
<view class="input-wrapper"> <view class="input-wrapper">
<input ref="input2" class="uni-input" value="0123456789" :selection-start="selectionStart" <input ref="input2" class="uni-input" value="0123456789" :selection-start="selectionStart"
:selection-end="selectionEnd" @blur="onSelectionBlurChange" /> :selection-end="selectionEnd" :focus="selectionInputFocus" @blur="onSelectionBlurChange" />
</view> </view>
</view> </view>
...@@ -160,7 +160,7 @@ ...@@ -160,7 +160,7 @@
<switch style="margin-left: 10px" @change="changeCursorColor" :checked="cursor_color == 'red'"></switch> <switch style="margin-left: 10px" @change="changeCursorColor" :checked="cursor_color == 'red'"></switch>
</view> </view>
<view class="input-wrapper"> <view class="input-wrapper">
<input id="uni-input-cursor-color" class="uni-input" :cursor-color="cursor_color" value="光标颜色" /> <input id="uni-input-cursor-color" class="uni-input" :cursor-color="cursor_color" :focus="cursorColorInputFocus" @blur="cursorColorInputBlur" value="光标颜色" />
</view> </view>
</view> </view>
...@@ -297,10 +297,13 @@ ...@@ -297,10 +297,13 @@
showClearIcon: false, showClearIcon: false,
inputClearValue: '', inputClearValue: '',
showPassword: true, showPassword: true,
cursor: -1, cursor: -1,
cursorInputFocus: false,
cursor_color: "#3393E2", cursor_color: "#3393E2",
cursorColorInputFocus: false,
selectionStart: -1, selectionStart: -1,
selectionEnd: -1, selectionEnd: -1,
selectionInputFocus: false,
inputEventDetail: '', inputEventDetail: '',
focusAndBlurEventDetail: '', focusAndBlurEventDetail: '',
confirmEventDetail: '', confirmEventDetail: '',
...@@ -331,19 +334,23 @@ ...@@ -331,19 +334,23 @@
this.onMaxLengthInputValue = event.detail.value this.onMaxLengthInputValue = event.detail.value
}, },
setCursor: function (cursor : number) { setCursor: function (cursor : number) {
(this.$refs['input'] as UniInputElement).focus(); // (this.$refs['input'] as UniInputElement).focus();
this.cursorInputFocus = true
this.cursor = cursor; this.cursor = cursor;
}, },
onCursorBlurChange() { onCursorBlurChange() {
this.cursor = 0 this.cursor = 0
this.cursorInputFocus = false
}, },
setSelection: function (selectionStart : number, selectionEnd : number) { setSelection: function (selectionStart : number, selectionEnd : number) {
(this.$refs['input2'] as UniInputElement).focus(); // (this.$refs['input2'] as UniInputElement).focus();
this.selectionInputFocus = true
this.selectionStart = selectionStart; this.selectionStart = selectionStart;
this.selectionEnd = selectionEnd; this.selectionEnd = selectionEnd;
}, },
onSelectionBlurChange() { onSelectionBlurChange() {
this.selectionEnd = 0; this.selectionEnd = 0;
this.selectionInputFocus = false
}, },
clearInput: function (event : UniInputEvent) { clearInput: function (event : UniInputEvent) {
this.inputClearValue = event.detail.value this.inputClearValue = event.detail.value
...@@ -391,8 +398,12 @@ ...@@ -391,8 +398,12 @@
} else { } else {
this.cursor_color = "#3393E2" this.cursor_color = "#3393E2"
} }
const input = uni.getElementById<UniInputElement>("uni-input-cursor-color") // const input = uni.getElementById<UniInputElement>("uni-input-cursor-color")
input?.focus() // input?.focus()
this.cursorColorInputFocus = true
},
cursorColorInputBlur(event : UniInputBlurEvent) {
this.cursorColorInputFocus = false
}, },
changeHoldKeyboard(event : UniSwitchChangeEvent) { changeHoldKeyboard(event : UniSwitchChangeEvent) {
const checked = event.detail.value; const checked = event.detail.value;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册