我有一种方法-
export default getLink= () => {
const url = 'http://....'
return url;
}
我想将其用作-
import getLink from './link';
const linkUrl= `${getLink}/food/new`;
但是似乎getLink
返回了我-
isfunction () {return'http://....';}/food/new
我如何仅返回http链接
答案 0 :(得分:1)
您没有调用函数,而是将指向该函数的变量连接到另一个字符串。
您应该调用函数以获取其输出:
const linkUrl= `${getLink()}/food/new`;
由于您正在模板字符串中使用指向函数的变量,因此您获得的输出是该函数的字符串表示形式(即其代码),该表示是通过调用函数的.toString方法获得的。您可以尝试以下方法自己查看:
console.log(getLink.toString());
答案 1 :(得分:1)
您正在那里返回一个函数,因为您可以通过调用该函数并为其分配一个变量来获取值。
import getLink from './link';
const url = getLink();
const linkUrl= `${url}/food/new`;
此外,使用此代码,实际上您无法导出箭头功能那样的函数。如果您使用default
,则不应在函数声明中使用名称来导出函数。
代替使用:
export default () => {
const url = 'http://www.foo.com'
return url;
};
或首先将其分配给变量,然后使用默认值:
const getLink = () => {
const url = 'http://www.foo.com'
return url;
};
export default getLink;
另一种替代方法是使用命名导出而不是default
。
export const getLink = () => {
const url = 'http://www.foo.com'
return url;
}
然后将其导入为:
import { getLink } from "/.link";