使用twig对象填充实现javascript自动完成数据

时间:2017-10-04 16:00:11

标签: javascript symfony autocomplete twig

我正在处理一个应用程序,现在我正在搞乱Materialise自动完成插件。

现在我想解析一组twig对象(让我们说客户),并在JS中创建一个像这样的数组:

var customersAutocomplete = [
        {
        key: 1,
        Title: "John Doe",
        label: 'John'},
        {
        key: 2,
        title: "Ulrich",
        label: 'John'},
        {
        key: 3,
        label: 'James'}
        ];

自动完成来自全局JS文件,如下所示:

$.fn.autocomplete = function (options) {
      // Defaults
      var defaults = {
        data: {customersAutocomplete},
        limit: Infinity,
        onAutocomplete: null,
        minLength: 1
      };

1 个答案:

答案 0 :(得分:1)

添加@ RaymondA评论,如果您的customers对象已经具有正确的结构,您可以使用Twig直接在模板中执行此操作:

<!-- views/your.view.html.twig -->
<script>   
    customersAutocomplete = {{ customers|json_encode() }};
</script>

然后在你的js文件中使用customersAutocomplete

$.fn.autocomplete = function (options) {
      // Defaults
      var defaults = {
        data: customersAutocomplete,
        limit: Infinity,
        onAutocomplete: null,
        minLength: 1
      };