【问题标题】:access value from custom directive of angularjs从 angularjs 的自定义指令访问值
【发布时间】:2015-01-12 02:57:02
【问题描述】:

我对 angularjs 很陌生,我正在努力学习它。如果我在学习曲线上问一些愚蠢的问题,请原谅我。

我创建了可重用的自定义指令,效果很好。我的完整代码在 http://plnkr.co/edit/GxM78QRwSjTrsX1SCxF7?p=preview

$scope.validateSingle = function(item) {
                    $scope.text = item[$scope.textField] + ($scope.textField2 !== '' ? " (" + item[$scope.textField2] + ")" : "");
                    $scope.value = item[$scope.valueField];
                    console.log($scope.value);
                    $scope.placeholder = 'placeholderBlack';
                    $scope.hideItems();
                    if (typeof $scope.callback == 'function') {
                        $scope.callback($scope.value);
                    }
                }

我也在上面的代码中分配了这个值,这是我的 plunker 的一部分

现在我的问题是在我选择项目后我想获取它的值以供以后使用,我确实在 $scope.validateSingle 函数中使用 $scope.value 分配了它,但我不知道如何访问它,如果我有页面上超过 1 个指令比我们如何独立访问它的值

一旦我选择了项目,我希望指令像下拉菜单一样工作,如果我希望在某些按钮单击中获得它的值,那么我可以使用 like dropdown.value,其中下拉菜单可以是指令的 id。希望我能澄清我的观点。

【问题讨论】:

  • 我已经添加了我的 plunker,但在您的评论中我还添加了代码
  • 包括 Punkr 在内的链接仅供参考,因为无法保证这些链接在未来仍然有效。
  • 请不要使用 URL 缩短器,这样很容易屏蔽垃圾邮件。您希望我们点击链接,让我们知道它是什么
  • 这方面有什么帮助吗?
  • 你想把它传递给一个控制器,还是你想把它存储在哪里?

标签: javascript angularjs angularjs-directive angularjs-scope


【解决方案1】:

正如我告诉你的那样,我正在学习曲线,我试图在不同的论坛上提出相同的问题,但我无法得到答案

但我突然想到为什么我们不能使用 ngModal 作为我想要的 ngBind,所以我首先在我的指令中添加了

require: 'ngModel',

然后在我的 $scope.validateSingle 函数中,我添加了 ngModel.$setViewValue($scope.value);,其中 $scope.value 我分配了选定的值,所以我的 validateSingle 函数变成了这样

            $scope.validateSingle = function(item) {
                $scope.text = item[$scope.textField] + ($scope.textField2 !== '' ? " (" + item[$scope.textField2] + ")" : "");
                $scope.value = item[$scope.valueField];
                $scope.placeholder = 'placeholderBlack';
                $scope.hideItems();
                if (typeof $scope.callback == 'function') {
                    $scope.callback($scope.value);
                }

                ngModel.$setViewValue($scope.value);
            }

所以宾果游戏每件事都像我想要的那样发挥魅力。我编辑了我的 plunker,你也可以查看http://plnkr.co/edit/GxM78QRwSjTrsX1SCxF7?p=preview

希望对新手有所帮助

【讨论】:

    猜你喜欢
    • 2014-06-24
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    • 2018-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    相关资源
    最近更新 更多