【问题标题】:Vuejs with arrays带有数组的 Vuejs
【发布时间】:2016-10-20 15:38:46
【问题描述】:

我将 JSON 响应转换为具有以下内容的数组:

        json_data = response.body.movies;
        var result = [];
        for(var i in json_data) result.push([i, json_data [i]]);
        self.movies = _.chunk(result, 3);

在我尝试转换它之前,它是一个对象,如下所示:

转换后:

我必须转换,因为 lodash chunk 方法仅适用于数组 (?)。

所以当运行_.chunk(JSONAPIREPSONSE,4) 时,self.movies 看起来像:

到目前为止太好了。

但是当我尝试v-forself.movies 时,我无法获得所需的信息。我有这个模板

           <div class="row" v-for="(movie, index) in movies" v-bind:index="index">
                <div class="col-sm-4" v-for="(set, key) in movie" v-bind:key="key">
                    <div class="panel">
                        <div class="panel-heading">
                            <a v-on:click.prevent="fetchNow(movie.movie_title)" :href="movie.movie_id">@{{ set.movie_title }}</a>
                        </div>
                        <div class="panel-body">
                        movie title: <b>@{{ set.movie_title }}</b> <br>
                        set: <b>@{{ set }}</b> <br>
                              //Here comes Content do whatever here
                        </div>
                    </div>
            </div>

{{ set.movie_title }} 的结果为空,没有错误。

{{ set }} 的结果是:

[ "0", { "movie_title": "Bridget Jones's", "movie_id": "17523" } ] 
[ "1", { "movie_title": "Strange", "movie_id": "17483" } ]

预期结果

显示数组内容的普通 vuejs 语法。

【问题讨论】:

  • 如果您可以包含更多的 Vue 组件(例如方法、数据以及进行 _.chunk 调用的位置),将会有所帮助。另外,movies 对象在转换之前的结构是什么?这是什么版本的 Vue——​​1.x 还是 2.x?
  • @PatrickSteele 我试图更新我的答案。该方法只是从 AJAX 请求中获取数据,并填充为我更新的答案中显示的第一张图片。 _.cunk 是来自 lodash 的一种方法。它的 vue 2.1

标签: javascript vue.js vue-resource


【解决方案1】:

尝试像{{ set[1].movie_title }}那样访问它

你可以使用_.chunk而不将json响应转换为数组并像{{ set.movie_title }}那样访问结果

【讨论】:

    猜你喜欢
    • 2017-06-28
    • 2023-03-22
    • 2018-05-22
    • 2017-02-10
    • 1970-01-01
    • 2018-12-06
    • 2022-01-13
    • 2018-12-05
    • 2016-05-06
    相关资源
    最近更新 更多