80 lines
2.3 KiB
JavaScript
80 lines
2.3 KiB
JavaScript
/** @odoo-module **/
|
|
|
|
import {registry} from "@web/core/registry";
|
|
import {CharField} from '@web/views/fields/char/char_field';
|
|
|
|
// 继承CharField组件实现自定义组件:当光标聚焦于输入框时,选中输入框内容
|
|
class CustomChar extends CharField {
|
|
/**
|
|
* @override
|
|
* @private
|
|
* @param {MouseEvent} ev
|
|
* @returns {Promise}
|
|
*/
|
|
|
|
onMounted() {
|
|
super.onMounted();
|
|
// console.log('CustomChar.onMounted1');
|
|
// 当光标聚焦于输入框时,选中输入框内容
|
|
this.input.el.addEventListener('focus', function () {
|
|
this.select();
|
|
});
|
|
}
|
|
|
|
|
|
// setup() {
|
|
// console.log('CustomChar.setup1');
|
|
// alert('CustomChar.setup1');
|
|
// super.setup();
|
|
// console.log(this)
|
|
// console.log('this.input', typeof this.input.el)
|
|
// console.log('this.props', this.props)
|
|
// console.log('this.props', this.props['value'])
|
|
// console.log('this.instanse', this.instance)
|
|
// console.log('this.el', this.el)
|
|
// console.log('9999999999',this)
|
|
// // this.input.el.addEventListener('focus', function() {
|
|
// // console.log('1233333333333')
|
|
// // })
|
|
// }
|
|
//
|
|
// async willStart() {
|
|
// console.log('CustomChar.willStart1');
|
|
// alert('CustomChar.willStart1');
|
|
// await super.willStart();
|
|
// }
|
|
//
|
|
//
|
|
// mounted() {
|
|
// console.log('CustomChar.mounted1');
|
|
// // Now, the component's DOM element should be available
|
|
// const inputElement = this.el.querySelector('input');
|
|
// // if (inputElement) {
|
|
// // inputElement.addEventListener('focus', function() {
|
|
// // this.select();
|
|
// // });
|
|
// // }
|
|
// }
|
|
|
|
// setup() {
|
|
// console.log('CustomChar.setup1');
|
|
// alert('CustomChar.setup1');
|
|
// super.setup();
|
|
//
|
|
// // 查找输入元素
|
|
// const inputElement = this.el.querySelector('input');
|
|
// if (inputElement) {
|
|
// inputElement.addEventListener('focus', function() {
|
|
// this.select();
|
|
// });
|
|
// }
|
|
// }
|
|
|
|
// this.$input.on('focus', function () {
|
|
// $(this).select();
|
|
// });
|
|
// 当光标聚焦于输入框时,选中输入框内容
|
|
}
|
|
|
|
registry.category("fields").add("custom_char", CustomChar);
|