第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在react項目中用es6封裝ajax請求,組件中調(diào)用總是報錯,求解?

在react項目中用es6封裝ajax請求,組件中調(diào)用總是報錯,求解?

炎炎設計 2018-08-06 09:09:20
函數(shù)代碼如下class networkEngine{     get(req){         req.type = 'get' ;         req.dataType = 'json' ;         req.cache = 'false' ;         req.beforeSend = xhr =>{             xhr.setRequestHeader('siXtRq3jPQlKpfKa15PFN6cS-gzGzoHsz ','u5SyAXObPG19dqtpnt1NOnoe ') ;         } ;         $.ajax(req) ;     }     tests(){        console.log("test1")     } }export { networkEngine as default } ;組件中的代碼如下import networkEngine from './../Server/networkEngine' ;class Teamholl extends React.Component {     componentDidMount() {       networkEngine.tests()     }     render(){        return (             <div>...</div>         ) ;     } } export { Teamholl as default } ;報錯信息如下Uncaught TypeError: _networkEngine2.default.tests is not a function我有幾點疑問:1,為什么我的類名是networkEngine報錯信息卻提示_networkEngine2.default.tests不是函數(shù)。2,正確的調(diào)用方式是什么?3,ajax的get請求,如何傳遞返回值?我是前端初學,希望可以講具體一點,謝謝。
查看完整描述

1 回答

?
胡子哥哥

TA貢獻1825條經(jīng)驗 獲得超6個贊

1、 babel 編譯的代碼就是這樣的,比如:

原始代碼:

import Test from './test';
Test.hehe();

編譯之后應該是:

'use strict';function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }var _test = require('./test');var _test2 = _interopRequireDefault(_test);
_test2['default'].hehe();

2、 你定義的 tests 方法是類 networkEngine 的實例方法,需要先實例化才能調(diào)用

new networkEngine().tests();

如果你不想實例化就調(diào)用,那就需要定義成靜態(tài)方法:

networkEngine.tests = function() {  console.log('靜態(tài)方法 tests');
}

提示:類名最好首字母大寫,NetworkEngine

3、 ajax 請求是異步的,拿返回值只能通過回調(diào)函數(shù)了


查看完整回答
反對 回復 2018-09-26
  • 1 回答
  • 0 關注
  • 908 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號