I think that in your question there is not enough version of ExtJS to begin with. Because since the version of Ext JS 5.0, the class you use is triggerfield obsolete. I recommend using Ext.form.field.Text for your needs - just a text field.
Ext.tree.Panel , it provides a tree view of the data user interface. TreePanel must be bound to the Ext.data.TreeStore . Filtering data can be done both in the tree itself using queryBy , and in the storage (if you do filtering locally without a request to the server, it works faster).
With regards to the request to the server, I think you need to register a proxy in the repository, in which you must specify at least the url from where the data will be taken. And also set autoSync to true to automatically synchronize the repository by its proxy after each edit.
I wanted to write a comment, but it does not fit, so I gave the answer. In general, based on what you have in the question - the answer will be like this (containing advice, without something specific, if I remember something else - I will write). I advise you to add a question with a more complete code.
A good resource for scooping information: Sencha Documentation