ФОРМА изменения формы угловых схем при изменении схемы

У меня проблема с изменением 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');
}
Другие вопросы по тегам