我正在使用MEAN堆栈。模板引擎是Jade。我需要将用户细节从jade传递给angular函数。 我的Jade代码如下:
extends layout
block content
div.container
div.row
div.col-sm-6.col-md-4.col-md-offset-4
h1.text-center.login-title Welcome #{user.username}. User Details
div.signup-wall
ul.user-details
li Username ---> #{user.username}
li Email ---> #{user.email}
li First Name ---> #{user.firstName}
li Last Name ---> #{user.lastName}
a(href='/signout', class='text-center new-account') Sign Out
br
div
div
select
option(ng-repeat='p in projects')
{{ p.name }}
br
p #{user.username}
p #{user.email}
form(style="")
textarea(type='text', ng-model='formData.workdone', placeholder='Work Done')
br
br
textarea(type='text', ng-model='formData.workdoing', placeholder='Work Doing')
br
br
textarea(type='text', ng-model='formData.blockers', placeholder='Blockers')
br
br
button(type='submit', ng-click='({user.username})' ) Submit
在按钮上单击 {user.username} 未定义。我无法将此值从Jade传递给AngularJS。
答案 0 :(得分:1)
我没有使用过Jade,但是在常规html中,你在ng-click属性中调用函数时不需要使用{},也就是你在点击按钮时缺少要调用的函数的名称,也许如果你试试
button(type='submit', ng-click='myFunction(user.username)' ) Submit
同样在您的控制器中,您可以从$ scope变量中获取用户名:
$scope.myFunction = function(username) {
console.log(username, $scope.user.username);
};