【问题标题】:Expected "assets" to be a list, but got null (Null)预期的“资产”是一个列表,但为空(Null)
【发布时间】:2021-05-18 15:21:54
【问题描述】:

我正在尝试通过 pubsec.yaml 中的资产添加图像,但它一直给我以下错误:

pubsec.yaml 代码:

name: grid_project
description: A new Flutter project.

publish_to: 'none' # Remove this line if you wish to publish to pub.dev

version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^1.0.2

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  assets:
    - assets/bus.png
    - assets/circle.png
    - assets/info.png
    - assets/phone.png
    - assets/play.png
    - assets/square.png

  uses-material-design: true

问题出现在flutter 下方的assets 字上,错误提示“'asset' 字段的值应该是相对文件路径的列表。 尝试将值转换为相对文件路径的列表。dart(asset_field_not_list)"

【问题讨论】:

  • 嗯,我觉得不错。您确定错误来自 pubspec.yaml 文件而不是其他地方的代码吗?另外,您在项目中的文件结构是什么(您将资产保存在哪里)?
  • 我确信错误来自 pubsec.yaml 文件,在输出选项卡中它给了我这个“在 pubspec 中检测到错误。”。这些图像位于项目根文件夹中名为 assets 的文件夹中。

标签: android flutter dart


【解决方案1】:

像这样的多个文件,在您的资产文件夹中创建一个文件。 示例:assets/images 然后将所有文件放在该图像文件夹中。

在您的 pubspec 中:

assets:
    - assets/images/

那么您将能够访问整个文件夹,而无需单独添加所有文件。

【讨论】:

  • 你忘了在路径中的破折号和资产之间添加空格,反正我也没有用。
  • 你的资产文件在项目的根目录吗?
  • 是的,它在根目录中
  • 你能告诉我你在代码中的什么地方使用这些资产吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-18
相关资源
最近更新 更多