Опустить параметр области из отправки формы - PullRequest
0 голосов
/ 28 августа 2018

У меня есть два представления с общими контроллерами и определениями общих полей. Я установил значение по умолчанию для одного из элементов ввода. Этот элемент, однако, отображается только для действия Disburse с https://localhost:8449/my-app/#/loanaccount/15/disburse.

Действие Утвердить отображается на https://localhost:8449/my-app/#/loanaccount/15/approve. Когда я отправляю форму для Утверждения, я получаю ошибку проверки " The parameter checkNumber has been passed and is not supported for this request". Похоже, что этап одобрения также неявно передает дополнительный элемент из Disburse.

Я хочу пропустить отправку этого параметра области действия, но только на этапе утверждения. В моем контроллере у меня есть:

 switch (scope.action) {
   case "disburse":                              
     resourceFactory.loanTrxnsTemplateResource.get({
       loanId: scope.accountId, 
       command: 'disburse'
     }, function (data) {
       scope.formData.checkNumber="USD"; 
     });
   case "approve":
     scope.taskPermissionName = 'APPROVE_LOAN';
     resourceFactory.loanTemplateResource.get({
       loanId: scope.accountId, 
       templateType: 'approval'
     }, function (data) {
       scope.formData.checkNumber= null;
     });
 }

Любые указания о том, как я могу исключить отправку этого параметра области действия на этапе утверждения.

1 Ответ

0 голосов
/ 28 августа 2018

Существует несколько способов решения этой проблемы.

1) Вы можете создать другой объект с допустимыми параметрами и отправить чистый запрос.

2) ИЛИ Вы можете удалить нежелательный параметр, как это.

delete scope.formData['checkNumber'];

Но иногда это может привести к проблеме, потому что происходит ссылка на форму.

3) ИЛИ Измените «Правило утверждения», чтобы проверять только требуемые параметры и игнорируйте ( Не отправлять обратно никаких исключений / ошибок ), если в запросе присутствует какой-либо нежелательный параметр.

...