作为许多其他开发人员面临的常见场景 - 我们有一个基于Symfony2/TWIG的成熟应用程序,并且一些html.twig模板因jQuery代码过载而难以维护.如何丢弃jQuery,并使用Angular?如果我有一些关于角度模块,控制器,服务和范围的基本知识,以及对Symfony2/TWIG的深入了解,我的第一个问题是 - 将变量从现有的控制器/树枝模板传递到角度控制器的最佳方法是什么?
我不想通过单独的JSON调用和Symfony2中的单独控制器来加载作用域.只想使用我在twig中的现有变量.
一种方法是声明一些全局js变量:
<script>
var window.someVar = {{ twig_object | json_encode() }};
</script>
Run Code Online (Sandbox Code Playgroud)
那么做就像
<div ng-controller="myCtrl" ng-init="init()">
<div ng-model="someVar"> .... </div>
</div>
Run Code Online (Sandbox Code Playgroud)
并在控制器中
app.controller('myCtrl', ['$scope', function($scope) {
$scope.init = function () {
if (window['someVar']) {
$scope['someVar'] = window['someVar'];
}
};
Run Code Online (Sandbox Code Playgroud)
但这对我来说似乎太难看了(3个步骤)可能至少要简化还是做其他方式?
经常在Windows上的Vagrant VM上运行ansible-playbook时,我需要按Ctrl + C停在某个中间位置.如果ansible变得没有响应或者我们需要尽快修复一些错误,就会发生这种情况,因此在配置程序完成之前没有必要等待.
探测是Ctrl + C不起作用,一些2个ruby.exe进程卡在进程树中.在手动终止这些ruby进程之前,任何后续的vagrant命令都会失败.
在运行新配置之前,我还用来杀死VM上所有被卡住的python ansible进程.
有什么方法可以更好地处理它吗?
Ansible有很长的配置参数列表,包括ssh的不同设置.假设我在当前文件夹中有一些/etc/ansible/ansible.cfg和其他ansible.cfg文件,如何查看生成的配置?
我说的是:
ansible show-config
ansible-playbook show config
Run Code Online (Sandbox Code Playgroud)