簡體   English   中英

嘗試導入錯誤:“ApiRequests”未從“./ApiRequests”導出

[英]Attempted import error: 'ApiRequests' is not exported from './ApiRequests'

我是 js 新手並做出反應,所以:

我嘗試導出 js function:

應用程序.js:

import React from 'react';
import logo from './logo.svg';
import './App.css';
import { render } from 'react-dom';
import { LazyLog } from 'react-lazylog';    
import 'bootstrap/dist/css/bootstrap.min.css';
import { Dropdown  } from 'react-bootstrap';
import {ApiRequests} from './ApiRequests'


var textConst="";
var lines=ApiRequests.GetMockLogLines();
textConst=lines;

和 ApiRequests.js:

export function GetMockLogLines()
{
 let logs=[""]
 return logs;
}

所以,當我編譯 js(哦,我的上帝)時,它讓我崩潰了:

Attempted import error: 'ApiRequests' is not exported from './ApiRequests'.

當我將其更改為:

 import ApiRequests from './ApiRequests'

->

 Attempted import error: './ApiRequests' does not contain a default export (imported as 'ApiRequests').  

所以,我只想從另一個文件中獲取 function 。 我做錯了什么?

{} 和沒有它有什么區別? (你可以給我一個鏈接開始閱讀,請)。

您的文件中沒有名為 Apirequests 的 function。 您要導出的 function 是GetMockLogLines()

所以你的進口應該是

import {GetMockLogLines} from './ApiRequests'

至於 {} 和沒有大括號之間的導入區別是您如何從文件中導出內容。 有兩種類型的導出 - 默認導出和命名導出。 每個文件只能有一個默認導出,並且必須在沒有花括號的情況下導入。

您可以在此處閱讀更多信息 - https://medium.com/@etherealm/named-export-vs-default-export-in-es6-affb483a0910

您需要直接導入GetMockLogLines ,因為它是命名導入。 將您的代碼更改為以下內容。

 import { GetMockLogLines } from './ApiRequests' var lines=GetMockLogLines();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM