【发布时间】:2015-02-13 15:58:25
【问题描述】:
我将一个变量从烧瓶传递到这样的模板
@app.route('/')
def respond():
return render_template('index.html', bar='foo')
在附加到该页面正文的 angularjs 控制器中,我有这样的功能:
$scope.init = function(bar){
$scope.content = bar;
}
我正在尝试将这个变量从烧瓶传递到模板中的角度,如下所示:
<body ng-init="init({{ bar|tojson|safe }})" ng-controller="AppCtrl">
但最终DOM中的标签搞砸了
<body ng-init="init("foo")" ng-controller="AppCtrl">
这个问题是引号。浏览器无法正确解释它们并且变量未传递。
所以我的问题是如何解决这个问题?我不想为了获取数据而从角度控制器发出另一个 http 请求。
编辑。
<body ng-init="init('{{ bar }}')" ng-controller="AppCtrl">
好像解决了
【问题讨论】:
-
<body ng-init="init('foo')" ng-controller="AppCtrl">这应该没问题..对内部变量使用单引号.. -
tojson将字符串用引号括起来。 -
@yotle 你的问题解决了吗?
-
@pankajparkar 是的,不完全是你告诉修复它的方式,但它已经解决了。你和 dirn 的回答给了我一个可行的想法。我编辑了这个问题,所以你可以看看我是怎么做的
-
继续@pankajparkar
标签: javascript python angularjs flask