liuxiran commented on issue #1039:
URL: 
https://github.com/apache/apisix-dashboard/issues/1039#issuecomment-766983789


   > Maybe we could use `form-render`[1] to build UI first, then export JSON 
schema, and update the plugin's schema finally?
   > 
   > [1] https://x-render.gitee.io/schema-generator/playground
   > 
   > cc @liuxiran @imjoey
   
   What a cool component library~!
   
   Recently, during my approach to #1241 , I rethought this issue:  
   
   1. build plugin form: (I'm ready to give up this plan)
   
        A: customized plugin form: Instead of build form from its Jsonschema, a 
customized plugin form can  tell user what each item is and how to fill it 
better, but it comes with high maintenance costs
   just take `proxy-rewrite` for example
   
![image](https://user-images.githubusercontent.com/2561857/105739754-68db1c80-5f73-11eb-84d3-d3bb4707e92c.png)
   
   
        B: build form from its jsonschema: someone like `request-validation` 
which need to define the schema, could not be build correctly, even if we have 
already found this cool library. Besides, we need to ask for a more friendly 
definition of plugin schema in APISIX(e.g: define description for each field 
item)
   
   1. continue to optimize our codemirror: In fact, users only need to know 
intuitively what configuration items the plugin has what the meaning of each 
config item and how to configure them, no matter the plugin is build with a 
form or a codemirror config.
   
   The biggest advantage of direct configuration is full coverage of plugin 
function, we only need to improve its  user experience.
     I've experienced the config of plugin in Aliyun API Gateway, which also 
use directly config, I think there are a few things we can refer to:
   
![image](https://user-images.githubusercontent.com/2561857/105740819-878de300-5f74-11eb-97a6-d16dff057fea.png)
   
   A: Several configuration templates are available, this is very helpful for 
most users, it will save the cost of study.
   B: Each configuration item is described in detail, it tells user how to 
configure directly
   C: The help document is shown in a modal, this makes it easier for users to 
copy and paste configuration items
    
   cc @juzhiyuan 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to