我正在尝试将数据从JSON文件获取到有角度的应用程序中,问题是我将使用此文件作为本地数据库,并且它将包含多个数组,因此我必须命名该数组,但是当我尝试时将其定义为vs会指出错误。
这是数组
var historybooks = [
{
"name" : "book1",
"id" : "his-1",
"author" : "omar",
"discription" : "lorem ipsum dolor ....",
"image" : "./assets/books-images/book1.png"
}
]
vs错误“预期的JSON对象,数组或文字。”
我也尝试用let代替var并得到相同的错误。
答案 0 :(得分:1)
如果文件是 JS 文件,请使用以下代码:-
export var historybooks = [
{
"name" : "book1",
"id" : "his-1",
"author" : "omar",
"discription" : "lorem ipsum dolor ....",
"image" : "./assets/books-images/book1.png"
}
]
如果要将文件命名为 .json ,请使用以下代码:-
[
{
"name" : "book1",
"id" : "his-1",
"author" : "omar",
"discription" : "lorem ipsum dolor ....",
"image" : "./assets/books-images/book1.png"
}
]
您可以发出Ajax请求以获取.json
文件。
答案 1 :(得分:1)
实际上,您不能编写声明,在JSON文件中,您只能将JSON对象或数组直接写在该文件上。
这就是为什么出现错误的原因:
“期望JSON对象,数组或文字。”
由于您要在JSON文件中编写JavaScript代码,因此请删除声明部分:
[
{
"name" : "book1",
"id" : "his-1",
"author" : "omar",
"discription" : "lorem ipsum dolor ....",
"image" : "./assets/books-images/book1.png"
}
]
答案 2 :(得分:0)
此后的代码可能被解释为数组的索引或类似内容
尝试在数组后添加分号:
var historybooks = [
{
"name" : "book1",
"id" : "his-1",
"author" : "omar",
"discription" : "lorem ipsum dolor ....",
"image" : "./assets/books-images/book1.png"
}
]; // <= here
答案 3 :(得分:0)
只需删除json中的decalartion部分,这样做就可以了。
[
{
"Neymary": "pleaseStopDiving"
}
]
答案 4 :(得分:0)
您无法在JSON中声明变量。请删除声明。
如果要声明更多数组,可以在同一文件中执行此操作:
{
"array1":[{"key":"value","key":"value"}],
"array2":[{"key":"value","key":"value"}]
}