Дополнения angular-schema-form с использованием нового компоновщика

Я пытаюсь написать AddOn, используя новый строитель. Пока все хорошо, но у меня не получается слушать schema.format.

Это простая программа для выбора даты, использующая UI-bootstrap.

angular.module('angularSchemaFormUiDatepicker', [
    'ui.bootstrap',
    'schemaForm',
    'templates',
    'pascalprecht.translate'
]).config(function(schemaFormProvider, schemaFormDecoratorsProvider, sfBuilderProvider, sfPathProvider) {

    var addOn = schemaFormDecoratorsProvider.defineAddOn(
        'bootstrapDecorator', // Name of the decorator you want to add to.
        'datepicker', // Form type that should render this add-on
        'src/templates/angular-schema-form-ui-datepicker.html', // Template name in $templateCache
        sfBuilderProvider.stdBuilders // List of builder functions to apply.
    );

    schemaFormProvider.prependRule('string', function(name, schema, options) {

        if (schema.format === 'datepicker') {
            // dirty workaround here
            if (schema['x-schema-form']) {
                schema['x-schema-form'].type = 'datepicker';
            } else {
                schema['x-schema-form'] = {
                    type: 'datepicker'
                }
            }
            var f = schemaFormProvider.stdFormObj(name, schema, options);
            f.key = options.path;
            f.type = 'datepicker';

            options.lookup[sfPathProvider.stringify(options.path)] = f;
            return f;
        }
    });
});

0 ответов

Другие вопросы по тегам