导入道具、解构分配和未解决的变量警告
import props, destructuring assignment & unresolved variable warning
我在前端有点新,所以我对使用 props
导入的代码实践有疑问。
我正在使用 next.js
(基于 React),我需要从 API 端点向我的页面插入 props
。
According to the example,它应该是这样的:
export async function getServerSideProps({query}) {
const res = await fetch(encodeURI(`url_here+${query}`));
const json = await res.json();
问题在于“接下来会发生什么”:
如果我将道具(上述功能的结果)导出到这样的页面:
return { props: {
_id: json._id,
ilvl: json.ilvl,
...
checksum: json.checksum,
并像使用 destructuring assignment 作为参数函数一样导入它:
function CharacterPage({ _id, id, ... }) {
...
}
THE PROBLEM
几乎有 16+ key:values
个来自 API 端点的响应 json 对象。
因此,如果我遵循上面的代码风格,那将是.. em.. 猜你已经明白了。
所以我可以从 API 端点导出结果,例如:
export async function getServerSideProps({query}) {
const res = await fetch(encodeURI(`url_here`));
const json = await res.json();
return {props: {json}
}
并将其导入,作为页面的一个参数,例如:
function CharacterPage({json})
但是如果我将在页面上使用 json.name
对象键(用于条件渲染),我的 IDE (WebStrom) 会向我显示 unresolved variable 警告。
那么我在哪里可以阅读正确的导入实践并找到包含来自 JSON 的大量键的 react-import props 示例?
我应该使用:
let {id, name, ...etc} = json
紧随其后:
function CharacterPage({json})
对于我想要访问的每个密钥,或者有更好的 way/code 导入道具的做法?
我的第一个想法是您可以修改 getServerSideProps 的 return 中的 JSON 对象。这里使用的是哪种属性的对象,这样会更清楚。
return { props: {
name: json.name,
id: json.id
...
}
}
如果做不到,最好先解构。
let {id, name, ...etc} = json
但只解构你需要的元素。不需要解构所有元素。
我在前端有点新,所以我对使用 props
导入的代码实践有疑问。
我正在使用 next.js
(基于 React),我需要从 API 端点向我的页面插入 props
。
According to the example,它应该是这样的:
export async function getServerSideProps({query}) {
const res = await fetch(encodeURI(`url_here+${query}`));
const json = await res.json();
问题在于“接下来会发生什么”:
如果我将道具(上述功能的结果)导出到这样的页面:
return { props: {
_id: json._id,
ilvl: json.ilvl,
...
checksum: json.checksum,
并像使用 destructuring assignment 作为参数函数一样导入它:
function CharacterPage({ _id, id, ... }) {
...
}
THE PROBLEM
几乎有 16+ key:values
个来自 API 端点的响应 json 对象。
因此,如果我遵循上面的代码风格,那将是.. em.. 猜你已经明白了。
所以我可以从 API 端点导出结果,例如:
export async function getServerSideProps({query}) {
const res = await fetch(encodeURI(`url_here`));
const json = await res.json();
return {props: {json}
}
并将其导入,作为页面的一个参数,例如:
function CharacterPage({json})
但是如果我将在页面上使用 json.name
对象键(用于条件渲染),我的 IDE (WebStrom) 会向我显示 unresolved variable 警告。
那么我在哪里可以阅读正确的导入实践并找到包含来自 JSON 的大量键的 react-import props 示例?
我应该使用:
let {id, name, ...etc} = json
紧随其后:
function CharacterPage({json})
对于我想要访问的每个密钥,或者有更好的 way/code 导入道具的做法?
我的第一个想法是您可以修改 getServerSideProps 的 return 中的 JSON 对象。这里使用的是哪种属性的对象,这样会更清楚。
return { props: {
name: json.name,
id: json.id
...
}
}
如果做不到,最好先解构。
let {id, name, ...etc} = json
但只解构你需要的元素。不需要解构所有元素。