gpt4 book ai didi

javascript - 如何仅使用 Angular 中的 ng-options 来转换值

转载 作者:行者123 更新时间:2023-11-29 21:21:56 25 4
gpt4 key购买 nike

我只想通过从 ng-options 中选择,将我从等式中获得的值转换为 cm/mm/inch,它会自动更新。知道如何通过仅使用 ng-options 中的选择而不使用任何按钮来做到这一点吗?

这里是代码示例

变量.html

<h1>{{value}}</h1>
<select ng-model = "length.selectedUnit" ng-options="x.unit for x in velogas1.availableUnits track by x.unit">

应用程序.js

$scope.length = { 
availableUnits: [
{unit: 'mm'},
{unit: 'cm'},
{unit: 'Inch'},
{unit: 'm'}
],
selectedUnit: {unit: 'm'}

};

最佳答案

您可以在选择上使用 ng-change 来触发您的计算功能。


编辑:如果您更改选项以包括乘法器,那么您可以让计算在插值器中进行,而无需 ng-change

angular.module('test', []).controller('Test', Test);

function Test($scope) {
$scope.value = 3.18; // in meter

$scope.units = [
{name: 'm', multiplier: 1},
{name: 'inch', multiplier: 39.3701},
{name: 'cm', multiplier: 10},
{name: 'mm', multiplier: 100}
]

$scope.selectedUnit = $scope.units[0];
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.1/angular.min.js"></script>

<div ng-app='test' ng-controller='Test'>
<div>{{ value * selectedUnit.multiplier }} {{selectedUnit.name}}</div>
<select ng-model="selectedUnit" ng-options="unit as unit.name for unit in units"></select>
</div>

关于javascript - 如何仅使用 Angular 中的 ng-options 来转换值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38342410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com