簡體   English   中英

將值插入模板AngularJS

[英]Insert value into template AngularJS

我有一個標志我設置為true / false,它改變了頁面上某些項目的顯示方式。 我遇到了一些麻煩,將價值納入我的模板並讓它真正起作用。 普通的HTML(不在模板內)工作正常。

restrict: 'E',
        scope: {
            speedDirection: "@",
            speedName: "@",
            value: "@",
            editElements: "="
        },
        template:
        '<div>'+
          '<p class="body-text">{{speedDirection}} '+
          '<input type="text" name="{{speedName}}" value="{{value}}" ng-show="editElements">'+
          '<span ng-hide="editElements">{{value}}</span>'+
          '</p>'+
        '</div>',

我想使用editElements的動態模型值,而不僅僅是傳遞的值。 這樣,當它改變時,它將反映所顯示模板中的更新。 變量在我存儲測試數據的對象中定義:

function MyObject($scope) {
    $scope.editElements = true;

有沒有辦法讓這個工作? 我嘗試使用“@”和{{editElement}}位等傳遞它(如上所述)。 自定義HTML部分:

<speed-limit speed-direction="A to B:"
                    speed-name="reverse"
                    value="{{newObject.speedLimit[0]}}"
                    editElement="editElements">
                    </speed-limit>

更新:我已經安裝了Batarang並且它顯示了我的自定義元素(速度限制)的特定部分,以具有“editElement:null”。 但是,引用的其他區域editElements已正確設置。 這是一些奇怪的范圍問題嗎?

正如評論中所討論的,同名可以用於屬性的名稱,但它必須是snake-case,因此edit-elements =“editElements”:

<speed-limit speed-direction="A to B:"
     speed-name="reverse"
     value="{{newObject.speedLimit[0]}}"
     edit-elements="editElements">
</speed-limit>

不要為此感到難過......我認為每位Angular開發人員都至少浪費了一個小時(或更長時間)的生命。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM