【问题标题】:In the Flutter what is best way to add package in pubspec.yaml file?在 Flutter 中,在 pubspec.yaml 文件中添加包的最佳方法是什么?
【发布时间】:2019-05-13 12:34:27
【问题描述】:

在颤振中我有点脑震荡添加包。

pubspec.yaml 文件中添加不带版本的包不是最好的方法吗?

可能是,默认情况下它会获取最新版本。但是添加新版本后会出现什么情况?

【问题讨论】:

    标签: dart flutter


    【解决方案1】:

    您可以省略版本或使用any,但最好添加版本范围。

    避免更新破坏您的应用程序/包

    指定版本约束有助于避免在包含重大更改(与旧代码不兼容)的新依赖版本可用时运行 flutter packages get 来意外破坏您的应用。
    然后,当您将代码与依赖项的新版本对齐时,您可以有意地扩展依赖项的版本范围。

    Dart 和包应该遵循语义版本控制,这意味着当更新包含重大更改时,需要增加主版本号。

    对于低于1.0.0 的版本,增加次要版本号表示重大更改。

    ^ 是定义版本范围的快捷方式,表示已定义的版本和不包含重大更改的所有更高版本。

    所以通常你会使用

    some_dependency: ">=2.0.0 <3.0.0"
    

    或短

    some_dependency: ^2.0.0
    

    如果某些更新修复了2.1.0 中您的应用程序或包所依赖的错误,您可以使用

    some_dependency: ">=2.1.0 <3.0.0"
    

    或短

    some_dependency: ^2.1.0
    

    性能

    指定一个狭窄的版本约束也可以使flutter packages get/upgrade 更快,尤其是当您的应用程序包含大量依赖项时,因为这减少了packages get/upgrade 的搜索空间,它需要遍历以找到一组兼容的依赖项。

    缺少功能

    请投票https://github.com/flutter/flutter/issues/12627 以从flutter packages get/upgrade 获得正确的信息,当有比你的约束允许的更新的依赖版本可用时(就像pub get/upgrade 对非Flutter Dart 项目所做的那样)

    另见

    【讨论】:

    • 很好的解释.. 感谢您提高我们的知识。
    猜你喜欢
    • 1970-01-01
    • 2020-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 2010-11-06
    • 2017-09-16
    • 1970-01-01
    相关资源
    最近更新 更多