Flutter踩坑记-资源加载

465 阅读1分钟

Flutter踩坑记-资源加载

才开始学习Flutter记录一下踩坑过程

问题引出-pubspec格式

在导入assets资源时,需要在pubspec配置引用

引用如下

flutter:
  uses-material-design: true
    assets:
    - assets/images/

我一按ctrl+s 就弹出这个提示:

点开一看,告诉我'assets:'有问题,呃..........

Error on line 47, column 10: Mapping values are not allowed here. Did you miss a colon earlier?
   ╷
47 │    assets:
   │          ^
   ╵

问题发现-pubspec格式

Flutter中pubspec配置文件是有规范的:

1.大小写敏感

2.缩进代表层级,使用空格,默认2个空格(flutter工具做了处理,tab也可以)

3.# 表示注释内容(并且必须单独一行)

: 表示键值对,注意后面要空格

{} 表示键值表

  • 表示列表,注意后面要空格

[] 表示数组,注意每项之间有空格

? 表示复杂的键

问题解决-pubspec格式

遵循缩进规则

flutter:
  uses-material-design: true
  #这里严格缩进就好了
  assets:
    - assets/images/

问题引出-以为已经可以了,结果我运行后,并没有展示出图片来 >.<

翻阅各种资料,入[官网文档](flutter.dev/docs/develo…),并没有找到问题所在

当然这个问题也是自己的锅了,目录结构如下 将 '- assets/images/' 改为 '- lib/assets/images/' 就可以了 而要使用 '- assets/images/',把assets文件夹拖出'lib'并与pubspec.yaml同级就好了(实际上,官网实例也是这个意思)

还有一个坑

如果你的images下面还有文件夹 weather ,你的继续为weather 申明

assets:
    - assets/images/
    - assets/images/weather/

总结如下

---> 你得为每一个文件夹申明

新手人坑 - 多谢高人指点