score:0

you need to first remove item from array and again place it in first. here, i have place data on state hook. it would be easier to understand.

import react, { usestate } from 'react';

function app() {
  const [templates, settemplates] = usestate(['template 1', 'template 2', 'template 3']);
  const addquestion = (item) => {
    let clone = [...templates];
    let objindex = clone.indexof(item);
    clone.splice(objindex, 1);
    settemplates([item, ...clone]);
  }
  const changeqtype = () => {

  }
  return (
    <div classname="app">
      <button onclick={() => addquestion("template 1")}> template 1 </button>
      <button onclick={() => addquestion("template 2")}> template 2 </button>
      <button onclick={() => addquestion("template 3")}> template 3 </button>
     
      <hr />
      <select id="q-type" onchange={(e) => changeqtype(e)}>
        {templates.map((item) => <option value={item}>{item}</option>)}
      </select>
    </div>
  );
}

export default app;


Related Query

More Query from same tag