根据条件选项切换字段的只读选项

Toggle readonly option for a field based on condition option

在阅读条件选项的文档时,它仅支持 hide/show 基于条件表达式计算方式的字段。希望了解如何在满足条件时创建一个字段 "read-only",而不是将其从视图中删除。

如果您的条件是一个没有副作用的函数(即它的输出仅取决于输入),您可以观察输入的变化并重新评估条件。

假设你有一个条件,只有当 first namelast name 都被填写时才需要显示一些东西。然后,你可以这样做:

<div ng-if='hasFirstNameAndLastName'>...</div>

JavaScript:

function checkIfHaveFirstNameAndLastName() { 
   $scope.hasFirstNameAndLastName = ($scope.firstName && $scope.lastName);
}

$scope.$watch('firstName', checkIfHaveFirstNameAndLastName);
$scope.$watch('lastName', checkIfHaveFirstNameAndLastName);

我实际上正在考虑将这样的东西烘焙到 angular-schema-form 因为 evalExpr()[=27 的重新评估=]一旦应用程序变大就会成为一个问题。