Vue 数据怎么获取使用外部的数据

Vue 数据怎么获取使用外部的数据,第1张

通常情况下,在构建 JavaScript 应用程序时,您希望从远程源或从API获取数据。我最近研究了一些公开的API,发现可以使用这些数据源完成很多很酷的东西。

更多来自作者的提示

快速提示:如何在JavaScript中排序对象数组

使用Vuejs,可以逐步地构建围绕其中一个服务的应用程序,并在几分钟内就可以开始向用户提供内容服务。

我将演示如何构建一个简单的新闻应用程序,它可以显示当天的热门新闻文章,并允许用户按照他们的兴趣类别进行过滤,从纽约时报API获取数据。您可以在这里找到本教程的完整代码。

下面是最终应用的外观:

要学习本教程,您将需要一些非常基本的Vuejs的知识。 您可以在这里找到一个很棒的“入门指南”。 我还将使用ES6语法,您可以到这里进一步学习:

项目结构

为了保持简单,我们只使用2个文件:

/appjs /indexhtml

appjs将包含我们应用程序的所有逻辑,indexhtml 文件将包含我们应用程序的主视图。

我们先在 indexhtml 中写一些基本的标记:

<!DOCTYPE html> <html>   <head>     <meta charset="utf-8">     <title>The greatest news app ever</title>   </head>   <body>     <div id="app">       <h3>VueNews</h3>      </div>   </body> </html>

然后,在indexhtml的底部导入 Vuejs和appjs,就在</body>标签之前:

<script src="/vue"></script> <script src="appjs"></script>

可选的,我们还可以导入Foundation,以利用一些预先创建的样式,来使我们的视图看起来更好一点。

<link rel="stylesheet" ajax/libs/foundation/631/css/foundationmincss">

创建一个简单的 Vue App

首先,我们将在div#app 元素上创建一个新的 Vue 实例,并使用一些测试数据来模拟新闻API的响应:

// /appjs const vm = new Vue({   el: '#app',   data: {     results: [       {title: "the very first post", abstract: "lorem ipsum some test dimpsum"},       {title: "and then there was the second", abstract: "lorem ipsum some test dimsum"},       {title: "third time's a charm", abstract: "lorem ipsum some test dimsum"},       {title: "four the last time", abstract: "lorem ipsum some test dimsum"}     ]   } });

我们通过el选项告诉 Vue 要挂载的目标元素,并通过data选项指定我们的应用程序用到的数据。

要在我们的应用程序视图中显示这些模拟数据,我们可以在#app元素中写入下面的标记:

<!-- /indexhtml --> <div class="columns medium-3" v-for="result in results">   <div>     <div>       {{ resulttitle }}     </div>     <div>       <p>{{ resultabstract }}</p>     </div>   </div> </div>

v-for 指令用于渲染我们的 results 列表。 我们使用双花括号来显示每一项的内容。

您可以在 Vue 模板语法 这里阅读更多内容

我们现在已经完成了基本的布局工作:

从 API 获取数据

要使用 纽约时报API,您需要获得一个API密钥。所以如果你还没有,注册并获取一个热点事件API的API密钥。

创建ajax请求和处理响应

Axios是一个基于 Promise 的>

以前,vue-resource 通常用于Vue项目,但现在已经退休了。

清空按钮是增加了显示与隐藏。

使用vue侦探属性可以很简单实现,但是遇到了一个问题,因为在清空按钮是增加了显示与隐藏,点击后直接被隐藏掉,导致后面的侦探属性侦听不到值的变化。

在Vue中,清空表单数据指将表单中的数据全部清空,即将输入框、下拉框、单选框、多选框等表单元素中的值全部置为空。

现在我们通过webpack+vue-cli搭建起了一个vue项目的框架,如果我们需要在vue组件中使用axios向后台获取数据应该怎么办呢?

通常情况下,我们搭建好的项目目录应该是这样子的

首先需要安装axios,这个会npm的都知道

下一步,在mainjs中引入axios

import axios from "axios";

与很多第三方模块不同的是,axios不能使用use方法,转而应该进行如下 *** 作

Vueprototype$axios = axios;

接着,我们就可以在Appvue中使用axios了

created:function(){ this$axiosget("/seller",{"id":123})then(res=>{ consolelog(resdata); }); }

用thissetdata({

shuju1

:

shuju2

})

shuju1:你自己命名的名字,

shuju2:调用接口后返回的数据,

然后你页面就可以用{{shuju1}},这样来获取了。

实际项目中我们获取选择的数据的id;这时候

需要配合使用v-bind,才能获取到选择的那条数据的id值,其实就是id赋值给value属性

<template>

<div>

<select

v-model="select"

>

<option

v-for="(a,index)

in

arr"

:key="index"

:value="aid">{{

aname

}}</option>

</select>

<p>您选择的名字的Id是:{{select}}</p>

</div>

</template>

js代码

<script>

export

default

{

data(){

return{

select:'',

arr:[

{id:'1',name:'html'},

{id:'2',name:'css'},

{id:'3',name:'js'},

]

}

}

}

</script>

拓展知识:vue获取id以及重定向路由方法

1获取ID的方法:

let

orderId=this$routequeryid;

2路由重定向方法

this$routerpush(this$routequeryredirect

||

'/login')

以上这篇vue *** 作下拉选择器获取选择的数据的id方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:Vuejs获取被选择的option的value和text值方法vue如何通过id从列表页跳转到对应的详情页vue实现在表格里,取每行的id的方法

以上就是关于Vue 数据怎么获取使用外部的数据全部的内容,包括:Vue 数据怎么获取使用外部的数据、vue清空表单数据后显示所有列表内容、Vue项目中使用axios获取网页数据问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10632286.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存