[AngularJS] Introduction to angular-formly

本文介绍了一个基于Angular的表单生成库Angular Formly的基本使用方法。通过实例展示了如何定义表单字段、模板选项及如何处理表单提交等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html>

<head>
    <!-- Each of these scripts are the latest version of the library at the time this jsbin was created -->

    <!-- Twitter bootstrap -->
    <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css"/>
    <!-- api-check is a dependency of angular-formly -->
    <script src="bower_components/api-check/dist/apiCheck.min.js"></script>

    <!-- angular.js is a dependency of angular-formly (obviously) -->
    <script src="bower_components/angular/angular.min.js"></script>

    <!-- This is angular-formly -->
    <script src="bower_components/angular-formly/dist/formly.min.js"></script>

    <!-- This is a bootstrap template libraray giving us some pre-defined types for bootstrap -->
    <script src="//rawgit.com/formly-js/angular-formly-templates-bootstrap/4.0.3/dist/angular-formly-templates-bootstrap.js"></script>

    <title>Angular Formly Lesson</title>
</head>

<body ng-app="formlyExample" ng-controller="MainCtrl as vm">
<div>
    <h1>
        angular-formly: Introduction<br />
        <small>Egghead.io lesson by @kentcdodds</small>
    </h1>
    <form name="vm.form" ng-submit="vm.onSubmit()" novalidate>
        <formly-form model="vm.model" fields="vm.fields"></formly-form>
        <button type="submit" class="btn btn-primary submit-button">Submit</button>
    </form>

    <form name="vm.form" ng-submit="vm.onSubmit()" novalidate>
        <div class="form-group">
            <label for="firstName">First Name</label>
            <input ng-model="vm.model.firstName" id="firstName" name="firstName" class="form-control" />
        </div>
        <button type="submit" class="btn btn-primary submit-button">Submit</button>
    </form>
    <h2>Model</h2>
    <pre>{{vm.model | json}}</pre>
    <h2>Fields <small>(note, functions are not shown)</small></h2>
    <pre>{{vm.originalFields | json}}</pre>
    <h2>Form</h2>
    <pre>{{vm.form | json}}</pre>
</div>
<script src="app.js"></script>
</body>

</html>

 

/* global angular */
(function() {

    'use strict';

    var app = angular.module('formlyExample', ['formly', 'formlyBootstrap']);

    app.controller('MainCtrl', function MainCtrl() {
        var vm = this;
        // funcation assignment
        vm.onSubmit = onSubmit;

        // variable assignment
        vm.model = {
            firstName: 'Obi Wan',
            something: {name: "default",value:"default"}
        };
        vm.fields = [
            {
                type: 'input',
                key: 'firstName',
                templateOptions: {
                    label: 'First Name'
                }
            },
            {
                template: '<hr />'
            },
            {
                type: 'select',
                key: 'something',
                templateOptions: {
                    label: 'Select Somthing',
                    options: [
                        {name: "wan", value: "Wan"},
                        {name: "obi", value: "Obi"},
                        {name: "Yui", value: "yui"}
                    ]
                }
            }
        ];


        // copy fields because formly adds data to them
        // that is not necessary to show for the purposes
        // of this lesson
        vm.originalFields = angular.copy(vm.fields);

        // function definition
        function onSubmit() {
            alert(JSON.stringify(vm.model), null, 2);
        }
    });

})();

 

转载于:https://www.cnblogs.com/Answer1215/p/4345719.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值