创建动态元素购买Vue.js后,List.js无法正常工作

时间:2017-03-01 19:27:51

标签: javascript jquery vue.js listjs

在我采取一切行动之后,我无法解决这个问题

我有一个项目列表,我必须从api中提取,但是当我在获得响应后附加元素但list.js不起作用时,它不会从元素中搜索任何东西。 在<div class="search-word" hidden></div>中,这包含带有name+' '+title+' '+number

等连接词的单词

显示错误

  

未捕获的TypeError:无法读取未定义的属性'childNodes'

这里是Html

<input type="text" id="filter_search">
<div id="items">
    <ul class="list list-unstyled">
        <!-- this dynamically created -->
        <li>
            <div class="search-word" hidden></div>
        </li>
        ...
        <li>
            <div class="search-word" hidden></div>
        </li>
        <!-- /this dynamically created -->
    </ul>
</div>

脚本

<script>
    /*========== List Js is Scrtip here ==========*/
    var options = {
        valueNames: ['search-word']
    };

    var items = new List("items", options);

    $(document).on('keypress keyup keydown', "#filter_search", function(){
        items.search($(this).val());
    });


    /*========== Vue Js is Scrtip here ==========*/
    var itemVue = new Vue({
        el: "#items",
        data: { 
            items: []
        },
        created() {
        this.postItems()
      },
        methods:{
            postItems : function() {
                thisData = this
                axios.post('http://...', {
                    _token: token,
                  })
                  .then(function (response) {
                    thisData.items = response.data
                  })
                  .catch(function (error) {
                    thisData.error = error
                  })
            }
        }
    });

</script>

请帮忙......

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以使用vue global nextick

Vue.nextTick(function () {
    let list = new List(id, options)
  })