首页重庆网站建设,悟空crm下载,注册公司有什么风险,顺义做网站的公司大体逻辑是
给input框添加一个input监听#xff0c;并判断输入是否为获取当前光标的位置#xff0c;你输入的肯定在光标之前#xff0c;且肯定是最后一个input输入的内容换行可以被认为空格#xff0c;需要进行全局替换判断成功的逻辑分为两部分#xff0c;前方一般来说是…大体逻辑是
给input框添加一个input监听并判断输入是否为获取当前光标的位置你输入的肯定在光标之前且肯定是最后一个input输入的内容换行可以被认为空格需要进行全局替换判断成功的逻辑分为两部分前方一般来说是为空或者index的下标为0后方的判断是到下一个间隔空格之间不能存在这个主要看产品需求一般情况是这样 //获取dom并添加input监听this.$refs.input.addEventListener(input, (event) {//判断if (event.data ) {//获取当前焦点位置const selectionStart event.srcElement.selectionStart;//将输入值的换行替换成 空格const value this.newComment.replace(/[\r\n]/g, );//获取到当前焦点位置最后一个const start value.lastIndexOf(, selectionStart);//获取从焦点位置后第一个空格的下标const fistSpaceIndexFromStart value.indexOf( , selectionStart);//能够找到就用第一个空格的下标否则就找到最后const end fistSpaceIndexFromStart -1 ? fistSpaceIndexFromStart : value.length;//获取到之后到下一个间隔之间的内容const termWithTrigger value.substring(start, end);//前方的判断-不包含index为0的情况const startBeforeHasSpace start 0 value[start - 1] ;if ((startBeforeHasSpace || start 0) !termWithTrigger.includes( ) !termWithTrigger.includes(, 1)) {//todo//成功之后要做的事情}}});