gpt4 book ai didi

javascript - 如何构造 vue.js 应用程序,以便我可以在页面加载时从计算属性访问 ajax 请求数据

转载 作者:行者123 更新时间:2023-12-03 03:32:49 26 4
gpt4 key购买 nike

我有以下代码(如下),可让用户搜索数组中的数据。我想用 api 中的数据替换 data 属性,但我不知道构建 vue.js 应用程序的正确方法,因此这些方法可以访问在页面加载时调用的 ajax 数据。

我知道我使用axios库来调用数据。

Vue.axios.get('https://jsonplaceholder.typicode.com/posts/1').then((response) => {
console.log(response.data)
})

我的代码

https://jsfiddle.net/bny191f7/1/

Vue.js 代码

new Vue({
el: '#app',
data: {
searchString: "",


users: [{ //____________I want to replace this data with api data
"name": "Bob"
},

{
"name": "Angel"
},

{
"name": "Whatever"
}


]
},
computed: {

filterUsers: function() { //___________And insure this has access to it
//___________so the app continues to work
var users_array = this.users,
searchString = this.searchString;

if (!searchString) {
return users_array;
}

searchString = searchString.trim().toLowerCase();

users_array = users_array.filter(function(item) {
if (item.name.toLowerCase().indexOf(searchString) !== -1) {
return item;
}
})

return users_array;;
}
}
});

HTML

<form id="app" v-cloak>

<input type="text" v-model="searchString" placeholder="Enter your search terms" />


<ul>

<li v-for="user in filterUsers">

<p>{{user.name}}</p>
</li>
</ul>

最佳答案

我明白了。

VUE

    new Vue({
el: '#app',
data: {
searchString: "",


users: undefined
},

mounted: function () {
Vue.axios.get('https://jsonplaceholder.typicode.com/posts')
.then(response => {
console.log(response);
this.users = response.data;
console.log(this.users);
})
.catch(function (error) {
console.log(error);
});
},
computed: {

filterUsers: function () {
var users_array = this.users,
searchString = this.searchString;

if(!searchString){
return users_array;
}

searchString = searchString.trim().toLowerCase();

users_array = users_array.filter(function(item){
if(item.title.toLowerCase().indexOf(searchString) !== -1){
return item;
}
})

return users_array;;
}
}
});

HTML

    <form id="app" v-cloak>

<input type="text" v-model="searchString" placeholder="Enter your search terms" />


<ul>

<li v-for="user in filterUsers">

<p>{{user.title}}</p>
</li>
</ul>

</form>

关于javascript - 如何构造 vue.js 应用程序,以便我可以在页面加载时从计算属性访问 ajax 请求数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46010709/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com