मैं vue2JS के लिए नया हूं और वर्तमान में मैं कभी भी vue2 में अपनी पहली सेवा बनाने की कोशिश कर रहा हूं।vue2JS में सेवा - बनाए गए हुक में त्रुटि
मैं इस कोड के साथ बुनियादी फ़ाइल api.js बना लिया है:
import axios from 'axios';
export default() => {
return axios.create({
baseURL: 'http://localhost:8080/',
timeout: 10000,
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
}
})
}
कोड ऊपर बुनियादी Axios विन्यास जो संपूर्ण एप्लिकेशन पर हर सेवा में उपयोग किया जाएगा है।
मैं अपने सेवा में इस फ़ाइल को आयात:
import api from '../api.js';
export default {
getLatest() {
return api().get(`http://localhost/obiezaca/ob_serwer/api/article/getLatest.php`, {
headers: {
'Content-Type': 'application/json'
}
})
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
});
}
}
कोड ऊपर बाकी एपीआई जो जवाब में JSON देना बैकेंड http अनुरोध करने के लिए ज़िम्मेदार है।
और फिर अंत में मैं अपने घटक <script></script>
टैग के अंदर इस सेवा का उपयोग करना चाहते हैं:
<script>
import { getLatest } from '../../../services/articles/getLatest';
export default {
data() {
return {
articles: []
}
},
created() {
const getLatestService = new getLatest();
console.log(getLatestService);
}
}
</script>
यहाँ मैं सेवा से कोड निष्पादित करने के लिए और वास्तव में अमल इस http अनुरोध तो getLatestService
निरंतर में उत्तर सहेजने चाहते हैं और फिर console.log
यह और मुझे अपने ब्राउज़र कंसोल में JSON देखने में सक्षम होना चाहिए।
यह काम नहीं करता है और मुझे क्रोम कंसोल में इस त्रुटि दे: कमांड लाइन में
[Vue warn]: Error in created hook: "TypeError: WEBPACK_IMPORTED_MODULE_0__services_articles_getLatest.a is not a constructor"
और यह त्रुटि:
39:35-44 "export 'getLatest' was not found in '../../../services/articles/getLatest'
कृपया मेरी मदद इस समस्या को हल करने के लिए। इसके अतिरिक्त मैं एसिंक प्रतीक्षा का उपयोग करने के लिए सेवा से दूसरे कोड (दूसरे एक) को दोबारा प्रतिक्रिया देना चाहता हूं लेकिन मुझे अच्छा उदाहरण नहीं मिल रहा है जो मुझे पूरा करने के लिए रास्ता दिखाएगा।
संपादित 22.11.17
मैं त्रुटि जो आदेश पंक्ति और {} जब घटक में आयात में दिखाने गयी। मैंने अभी भी समस्या का समाधान नहीं किया है।
संपादित 24.11.17
एक जवाब मैं कोड का अधिक विवरण जोड़ने के लिए खोज रहे हैं मैं पोस्ट किया है और हो सकता है यह मदद कर सकते हैं, तो फ़ाइलों संरचना के स्क्रीनशॉट।
क्या आपके बंडलर को आपके आयात के लिए .js एक्सटेंशन की आवश्यकता है? '' 'आयात करें {getLatest} से '../../../ सेवाएं/आलेख/getLatest';' '' – Fred
मुझे लगता है कि यह मेरा वेबपैक है k.base.conf.js कॉन्फ़िगरेशन फ़ाइल: https://gist.github.com/anonymous/8cfe140faaa9f3e79805db56d7cb8902 – BT101
अपने स्क्रिप्ट टैग में, क्या आप वाकई 'const getLatestService = new getLatest();' कॉल करना चाहते हैं। आप यहाँ 'नया' कीवर्ड का उपयोग क्यों कर रहे हैं? वह ऑब्जेक्ट को तुरंत चालू करने का प्रयास करेगा, जब मुझे लगता है कि आप केवल फ़ंक्शन को कॉल करने का प्रयास कर रहे हैं। – Phil