diff --git a/src/views/Conversations/Online/Input/Template.jsx b/src/views/Conversations/Online/Input/Template.jsx index 7e24db4..bf1705e 100644 --- a/src/views/Conversations/Online/Input/Template.jsx +++ b/src/views/Conversations/Online/Input/Template.jsx @@ -31,10 +31,10 @@ const templateCaterogyTipText = { 'UTILITY': '触达率高', 'MARKETING': '' } const CategoryList = ({ dataSource, handleSendTemplate, valueMapped, onInput, activeInput }) => { const currentConversation = useConversationStore((state) => state.currentConversation); const renderForm = ({ tempItem }, key = 'body') => { - const templateText = tempItem.components?.[key]?.[0]?.text || ''; - const tempArr = splitTemplate(templateText); - const keys = (templateText.match(/{{(.*?)}}/g) || []).map((key) => key.replace(/{{|}}/g, '')); - const paramsVal = keys.reduce((r, k) => ({ ...r, [k]: getNestedValue(valueMapped, [k]) }), {}); + const templateText = tempItem.components?.[key]?.[0]?.text || '' + const tempArr = splitTemplate(templateText) + const keys = (templateText.match(/{{(.*?)}}/g) || []).map((key) => key.replace(/{{|}}/g, '')) + const paramsVal = keys.reduce((r, k) => ({ ...r, [k]: getNestedValue(valueMapped, [k]) }), {}) return ( <> @@ -43,11 +43,25 @@ const CategoryList = ({ dataSource, handleSendTemplate, valueMapped, onInput, ac {ele.replace(/\n+/g, '\n')} + ) : ele.key.includes('free') || ele.key.includes('detail') ? ( + { + onInput(tempItem, ele.key, e.target.value, paramsVal) + }} + className={` w-11/12 `} + size={'small'} + title={ele.key} + placeholder={`${paramsVal[ele.key] || ele.key} 按Tab键跳到下一个空格\n注意: 模板消息无法输入换行`} + value={activeInput[tempItem.name]?.[ele.key] || paramsVal[ele.key] || ''} + // onPressEnter={() => handleSendTemplate(tempItem)} + /> ) : ( { - onInput(tempItem, ele.key, e.target.value, paramsVal); + onInput(tempItem, ele.key, e.target.value, paramsVal) }} className={ele.key.includes('free') || ele.key.includes('detail') ? `w-full block ` : `w-auto ${paramsVal[ele.key] ? 'max-w-24' : 'max-w-60'}`} size={'small'} @@ -56,10 +70,10 @@ const CategoryList = ({ dataSource, handleSendTemplate, valueMapped, onInput, ac value={activeInput[tempItem.name]?.[ele.key] || paramsVal[ele.key] || ''} // onPressEnter={() => handleSendTemplate(tempItem)} /> - ) + ), )} - ); + ) }; const renderHeader = ({ tempItem }) => { if (isEmpty(tempItem.components.header)) { @@ -346,7 +360,7 @@ const InputTemplate = ({ disabled = false, invokeSendMessage }) => { open={openTemplates} onOpenChange={(v) => { setOpenTemplates(v); - setActiveInput({}); + // setActiveInput({}); }}>