簡體   English   中英

如何在玉器模板(node.js)中將變量從angularJS插入字符串

[英]How to insert variable from angularJS to string in jade template (node.js)

如果我有角度$scope.id = '123' ,如何在node.js的Jade模板中使用它? 我想將其用作鏈接的一部分。

p
   | {{id}} // It does work...

form(name="Remove", action="/cam/{{id}}_method=DELETE", method="post")
// ...but it doesn't
      button(type='submit')
           | ready

使用Jade時,可以使用!=運算符進行unescape HTML編碼。

form(name="Remove", action!="/cam/{{id}}_method=DELETE", method="post")

但是,這可能會導致插值問題。 因此,我建議您在像這樣的控制器中具有功能

$scope.form_url = function (id) {
  return '/cam/' + id + '_method=DELETE';
};

那么這應該可以解決問題:

form(name="Remove", action="{{form_url()}}", method="post")

檢查以下來源: nodejs,翡翠轉義標記AngularJS多個表達式,它們通過URL插值連接

嘗試:

form(name="Remove", action="'/cam/' + {{id}} + '_method=DELETE'", method="post")

當沒有管道前綴時,Jade使用{}作為評估指標,因此您需要使用不需要此前綴的角度綁定。 對於您的示例,我將創建一個控制器函數並將其ID和方法傳遞給它。 這是一個例子:

script.
    angular.module('formapp', [])
        .controller('formctrl', function($scope, $http){
            $scope.formsubmit = function(id, method){
                $http({
                    method: method,
                    url: '/cam/' + id + '_method=DELETE'
                });
            };
        })
form(ng-controller="formctrl" name="Remove", ng-submit="formsubmit(id, 'post')")
  button(type='submit')
       | ready

暫無
暫無

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

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