自定義 AngularJS 過濾器忽略我的參數並接收其他一些 scope.data (custom AngularJS filter ignores my parameter and receive some other scope.data)


問題描述

自定義 AngularJS 過濾器忽略我的參數並接收其他一些 scope.data (custom AngularJS filter ignores my parameter and receive some other scope.data)

我有一個很奇怪的問題。製作了一個自定義的AngularJS過濾器:

這是它的一部分:

angular.module('filterModule', []).
    filter('nscode', function () {

        return function (input) {

            console.log('input:');
            console.log(input);

           (...)

然後我在這裡調用這個過濾器:

<ol ui‑tree‑nodes="" data‑nodrop‑enabled="false" ng‑model="node.i" collapsed="true" data‑nodrag ng‑class="{hidden: collapsed}">
    <li ng‑repeat="node in node.i | nscode:{data: scope.data, code: nscodeinput}" ui‑tree‑node data‑nodrag 
        collapsed="true"
        ng‑show="visible(node)"
        ng‑include="'nodes_renderer.html'">
    </li>
</ol>

你會認為我的nscode過濾器會收到 {data: scope.data, code: nscodeinput},但我得到的是:

input:
filterModule.js:8 [Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object]

這是節點的內容,來自 ng‑model。我真的不明白為什麼會發生這種情況?

我只是將對像傳遞給我的過濾器,但無論我設置什麼參數,它都會繼續獲取節點元素。


參考解法

方法 1:

Solved it:

    return function (array, input) {

For some reason it sends the array of the ng‑model even if I don't ask for it. So my filter needs to take two parameters. the second one receives the arguments I send to my filter.

(by ganjanganjan)

參考文件

  1. custom AngularJS filter ignores my parameter and receive some other scope.data (CC BY‑SA 2.5/3.0/4.0)

#javascript #angularjs #module #filter #angularjs-scope






相關問題

為什麼我不能在 IE8 (javascript) 上擴展 localStorage? (Why can't I extend localStorage on IE8 (javascript)?)

在 Javascript 中打開外部 sqlite3 數據庫 (Open external sqlite3 database in Javascript)

Javascript:數組中的所有對像都具有相同的屬性 (Javascript: All Objects in Array Have Same Properties)

為什麼我們要在 javascripts 原型中添加函數? (Why do we add functions to javascripts prototype?)

顯示 URL javascript 的最後一部分? (Display the last part of URL javascript?)

Javascript XMLHttpRequest:忽略無效的 SSL 證書 (Javascript XMLHttpRequest: Ignore invalid SSL Certificate)

有沒有辦法測試 console.log 整體 (Is there a way to test for console.log entires)

如何從 javascript 對像中獲取名稱和值到新列表中? (How to get name and values from a javascript object into a new list?)

數據未發布..幫助!html,js,firebase (Data not posting.. Help! html,js,firebase)

使用 Node.js 腳本查看表單數據 (Seeing form data with Node.js script)

使用百分比查找範圍內的值 (find the value within a range using percent)

如何通過 react.js 中的組件傳遞變量或數據? (How to pass varible or data through components in react.js?)







留言討論