代码之家  ›  专栏  ›  技术社区  ›  Sara Fuerst

如何调试ng模式

  •  0
  • Sara Fuerst  · 技术社区  · 9 年前

    ng-pattern .

    在我的表格中,我有:

    <form name="jobsForm" id="jobs-form">
        <div jobs-form jobs="jobs">
            <div ng-form="jobsForm">
                <div class="form-group">
                    <label for="source_path">Source Path:</label>
                    <input type="text" class="form-control" name="source_path" id="source_path" ng-model="jobs.source_path" ng-pattern="path_regex" required>
                    <span class="input-error" ng-show="jobsForm.source_path.$invalid.pattern">INVALID PATH</span>
                </div>
            </div>
        </div>
        <button type="submit" class="btn btn-primary-red" ng-click="submitJob()">Submit</button>
    </form>
    

    path_regex

    $scope.path_regex = /^[a-zA-Z]:\\(((?![<>:"\/\\|?*]).)+(\\)?)*$/;
    

    当我尝试时,什么都不起作用。调试这个的最佳方法是什么?可以在中放置断点并检查我的值吗 ng-show

    1 回复  |  直到 9 年前
        1
  •  3
  •   flyer    9 年前

    你当然可以。如果你看看 文档 ng-pattern 查看源 “右上角的按钮,您将看到源代码。该指令没有太多内容。搜索以下代码:

    ctrl.$validators.pattern = function(modelValue, viewValue) {
            // HTML5 pattern constraint validates the input value, so we validate the viewValue
            return ctrl.$isEmpty(viewValue) || isUndefined(regexp) || regexp.test(viewValue);
    };
    

    $验证器 在模型控制器上。当数据更改时,将执行所有的$validator。

    来源 面板并搜索其中一行代码,然后在未缩小的 角度.js