vue.js 三(数据交互)isomorphic-fetch
至于fetch的介绍,在这里就不多说了,官方和网络上的说明不少
之前使用jquery的Ajax朋友,可以尝试一下使用一下这个新的api
推荐使用isomorphic-fetch,兼容Node.js和浏览器两种环境运行。
npm install --save isomorphic-fetch es6-promise
这里我按照官方网站的介绍,具体在vue.js中写了一个范例,只需要拷贝代码到新的文件Index.vue就可以试一试看看了
<template>
<div class="index">
<div v-for="item in items" class="story">
<div>{{item.title}}</div>
<div class="story-author">{{item.author}}</div>
<div>{{item.date}}</div> <div v-html="item.body"></div>
</div>
</div>
</template> <script> require('es6-promise').polyfill();
require('isomorphic-fetch'); export default {
name: 'hello',
data() {
return {
msg: 'Welcome to Your Vue.js App',
items: [] }
}, created: function () {
let vueThis = this; fetch('http://offline-news-api.herokuapp.com/stories')
.then(function (response) {
if (response.status >= 400) {
throw new Error("Bad response from server");
}
return response.json();
})
.then(function (stories) {
console.log(stories);
vueThis.items = stories; });
}
}
</script> <!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
.story {
border: 1px solid #ccc;
padding: 5px;
} .story-author {
font-weight: bold;
font-size: 18px;
font-style: italic;
}
</style>
由于IE对Promise的不支持,所以还需要使用 promise-polyfill
npm install promise-polyfill --save-exact
router/index.js文件添加引用(红色标记的地方)
import Vue from 'vue'
import Router from 'vue-router'
import Promise from 'promise-polyfill' if (!window.Promise) {
window.Promise = Promise;
} const Hello = r => require.ensure([], () => r(require('../pages/Hello')), 'group-b')
const Index = r => require.ensure([], () => r(require('../pages/Index')), 'group-a') Vue.use(Router) export default new Router({
routes: [
{ path: '/', name: 'Index', component: Index },
{ path: '/hello', name: 'Hello', component: Hello }
]
})
由于我的浏览器是IE11,修改文档模式的情况下,只有IE9+以上运行正常,IE的其他浏览器有要求的请慎用。
以上只是GET获取数据的范例,其他的修改Header,跨域等一些常见问题,按照fetch对应的用法使用就可以了
这里只是对于初次使用vue.js不知道怎么获取数据做的一个简单的范例。
今天写文章不利,快写完的时候浏览器崩溃,连历史记录都没有留下,只能从简重新写了,就写到这里吧,如有帮助您的地方,推荐一下吧!
vue.js 三(数据交互)isomorphic-fetch的更多相关文章
- 一天带你入门到放弃vue.js(三)
自定义指令 在上面学习了自定义组件接下来看一下自定义指令 自己新建的标签赋予特殊功能的是组件,而指定是在标签上使用类似于属性,以v-name开头,v-on,v-if...是系统指令! v-是表示这是v ...
- vue.js 三种方式安装
Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...
- 04 . Vue组件注册,数据交互,调试工具及组件插槽介绍及使用
vue组件 组件(Component)是 Vue.js 最强大的功能之一. 组件可以扩展 HTML 元素,封装可重用的代码. 组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的 ...
- vue.js 三种方式安装--npm安装
Vue.js是一个构建数据驱动的 web 界面的渐进式框架. Vue.js 的目标是通过简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易上手,便于与第三方库或既有项目整合. ...
- 【转】vue.js三种安装方式
Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...
- vue.js三种安装方式
Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易于上手 ...
- vue 前后端数据交互问题解决
先在vue项目中配置好路由组件路由 然后写相应组件 2 后端 写接口赔路由 第三 解决跨域问题 处理数据交互 这样前端就拿到了数据
- vue.js之数据传递和数据分发slot
一.组件间的数据传递 1.父组件获取子组件的数据 *子组件把自己的数据,发送到父级 *vm.$emit(事件名,数据); *v-on: @ 示例用法:当点击send按钮的时候,"111&qu ...
- 学习随笔:Vue.js与Django交互以及Ajax和axios
1. Vue.js地址 Staticfile CDN(国内): https://cdn.staticfile.org/vue/2.2.2/vue.min.js unpkg:会保持和npm发布的最新的版 ...
随机推荐
- Appium + Python自动化3 - 输入中文
在做app自动化过程中会踩很多坑,咱们都是用中文的app,所以首先要解决中文输入的问题!本篇通过屏蔽软键盘,绕过手机的软键盘方法,解决中文输入问题. 一.定位搜索 1.打开淘宝点击搜索按钮,进入搜索页 ...
- OO 第三单元总结
1. JML梳理 根据JML LEVEL 0手册梳理常用条目 1.1 JML 理论基础 \result表达式 : 表示方法返回值 \old( expr )表达式:表示方法执行之前expr表达式取值,若 ...
- javascript浮点值运算舍入误差
问题 在javascript中整数和浮点数都属于Number数据类型(简单数据类型中的一种),我们经常会发现在打印1.0这样的浮点数的结果是1而非1.0,这是由于保存浮点数的内存空间是保存整数值的两倍 ...
- 用C++/CLI搭建C++和C#之间的桥梁
一.简单用法 C#和C++是非常相似的两种语言,然而我们却常常将其用于两种不同的地方,C#得益于其简洁的语法和丰富的类库,常用来构建业务系统.C++则具有底层API的访问能力和拔尖的执行效率,往往用于 ...
- FusionCharts使用教程:为JavaScript图表提供数据
FusionCharts的JavaScript类提供了一系列的函数来提供图表数据. FusionCharts的JavaScript类支持XML或JSON格式的数据.这些数据可以是URL或字符串. 以X ...
- mongodb 认证方式(version:3.0.4)
之前一直在本机上跑,前段时间把后台架到云服务器上了,在settings里加上了username和password,希望同步的时候修改一下settings就能在本地测试. 因为云服务器端数据库连接需 ...
- PHP重定向的三个方法
js的重定向方法:location.href=目标 url(如 https:www.baidu.com); php的重定向方法: header("location: https:www.ba ...
- yii2 详细分解实现分页效果
1.首先,准备一个数据表,内容为: 然后建立一个控制器,比如我的例子中的是:PractiseController.php 接着,我们开始在控制器中输入内容: 从中我们可以看到,这是将表数据中,id为2 ...
- SQLSERVER 创建ODBC 报错的解决办法 SQLState:'01000'的解决方案
错误详情如下: SQLState:'01000' SQL Server 错误:14 [Microsoft][ODBC SQL Server Driver][DBNETLIB] ConnectionOp ...
- 使用Intellij IDEA 14.0.2 编译项目耗时特别长的问题
前段时间在使用IDEA编译项目时后台编译会一直Hang在那.如图: 刚开始以为是升级将IDEA从13升级至14的问题,退回到13 问题依就.Google了下,按照相应方法还是无果,没办法 还重装了下系 ...