gpt4 book ai didi

javascript - Angular JS 中的 Lodash - 获取 TypeError : Object function lodash(value)

转载 作者:行者123 更新时间:2023-11-29 10:15:32 24 4
gpt4 key购买 nike

我已经用 Angular 创建了一个应用程序来执行一个简单的计算器。该应用程序运行良好(demo),但在 Controller 中的计算方法中,我用 javascript 编写了一些算术计算。所以为了让我的 Angular 代码干净,我创建了另一个名为 common.js 的文件,我在其中放置了算术计算。我正在使用 lodash.js。但是当我尝试调用方法时 _.calculateResult($scope.firstNumber, $scope.secondNumber, $scope.selectedOperator ); 我遇到了以下异常。

TypeError: Object function lodash(value) {
// don't wrap if already wrapped, even if wrapped by a different `lodash` constructor
return (value && typeof value == 'object' && !isArray(value) && hasOwnProperty.call(value, '__wrapped__'))
? ...<omitted>... } has no method 'calculateResult'
at Object.$scope.calculate (http://localhost:8080/RestSample/app/scripts/controllers.js:18:19)

谁能告诉我一些解决方案。

common.js

(function() {

var calculateResult = function(no1, no2, opp) {
var A = parseInt(no1);
var B = parseInt(no2);
var C = 0;

switch (opp) {
case '+':
C = A + B;
break;
case '-':
C = A - B;
break;
case '*':
C = A * B;
break;
case '/':
C = A / B;
break;
}

return C;
}

})();

controllers.js

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

app.controller("appController", function($scope){
$scope.operators = ['+', '-', '*', '/'];
$scope.selectedOperator = $scope.operators[0];

$scope.calculate = function() {
$scope.result = _.calculateResult($scope.firstNumber, $scope.secondNumber, $scope.selectedOperator );

};
});

index.html

    <div ng-app="app">
<div ng-controller="appController">

<div class="offset4 span6 well">
<label>Enter a value :</label>
<input ng-model="firstNumber" type="text"> <br/><br>


<label>Another Value:</label>
<input ng-model="secondNumber" type="text"> <br/><br>

<label>Operator:</label>
<select ng-model="selectedOperator"
ng-options="operator for operator in operators"></select>
<br><br>

<button ng-click="calculate()">Calculate</button> <br><br>

Result: {{result}}
</div>
</div>
</div>

最佳答案

试试 ngLodash 模块,像使用任何 Angular 模块/插件一样启动它。它可以在不触及窗口范围的情况下完成工作,并保持正常的 Angular 加载方式。

https://github.com/rockabox/ng-lodash

它也在凉亭上

Bower 安装 nglodash

将其添加到带有脚本标签的 html 文件中,并将其加载到模块中。

关于javascript - Angular JS 中的 Lodash - 获取 TypeError : Object function lodash(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22743994/

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