ФОРМА изменения формы угловых схем при изменении схемы
У меня проблема с изменением JSON-схемы с помощью угловой схемы. Если я настрою схему, как в коде, как это
$scope.schema = {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Schema number ONE",
"type": "object",
"properties": {..
он работает и правильно отображает всю форму, как я хочу. Но я хочу загрузить данные из веб-сервиса.
Поэтому я попытался настроить схему на ничто, а затем изменить ее, нажав кнопку, но это не сработало. Я имею в виду, я получил схему от сервиса, но форма не изменилась. Например, что-то подобное в коде.
$scope.schema = {};
$scope.changeSchema= function(){
$scope.schema = {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": " Schema number two that I want",
"type": "object",
"properties": {
}
Я хочу выбрать схему для загрузки и изменить форму на выбранную мной схему. Большое спасибо.
1 ответ
Как отметил Клэйс в своем комментарии, вам нужно запустить трансляцию schemaFormRedraw. Однако при загрузке ошибка возникает из-за проверки схемы, {}
, это должна быть временная схема, что-то вроде этого должно работать:
$scope.schema = { "type": "object", "properties": {} }};
$scope.changeSchema = function() {
$scope.schema = {
"$schema": "http://json-schema.org/draft-04/schema#",
"title": " Schema number two that I want",
"type": "object",
"properties": {...}
}
$scope.$broadcast('schemaFormRedraw');
}