flutter get 命令行工具

mac终端执行:

flutter pub global activate get_cli

这个安装完以后会提示英文提示你要把一个 目录添加到mac环境变量中,下面的目录是你安装完以后提示你放到环境变量里的目录

export PATH="$PATH":"$HOME/.pub-cache/bin"

mac13系统以后环境变量的2个文件如下:

open ~/.bash_profile
open ~/.zshrc

用终端执行打开文件,然后把环境变量 :export PATH=" P A T H " : " PATH":" PATH":"HOME/.pub-cache/bin"放进去,再保存

激活这2个文件

source ~/.bash_profile 
source ~/.zshrc

之后在终端输入:

get 或者 getx 会出现get的帮助,显示每个命令什么作用:

终端进入到项目所在目录再执行命令

get init

按照提示输入2次1,会覆盖项目,慎用

初始化get,要打开vpn这样才能让get 执行,有的时候会失败,需要多执行几次,如果碰到执行put get停止的时候,可以自己手动打开项目,用android studio打开 pubspec.yaml 文件,点击put get自己安装 get插件

有的这个时候提示你flutter的另一个进程正在使用pub get,被锁定lock. 这个时候要自己手动找到flutter的sdk目录然后删除文件:flutter/bin/cache/lockfile ,这样就会解除lock了,这个时候自己再执行get put

create page 生成一整套页面+控制器+路由

 get create page 页面名

这个会生成GetView页面类,在modules文件夹下生成页面名字的文件夹,还会生成跟这个页面绑定的controller文件,binding文件,还会在app_pages.dart和app_routes.dart里面添加路由跳转页面的代码,

建议直接用get create page 命令,就不用在用get create controller生成控制器了

例如我执行:

get create page PG1

如下图显示修改了的文件,生成的文件夹和文件

create view 单独生成页面GetView

 get create view 页面名字

在views文件夹下单独生成一个GetView页面.

create controller 单独生成控制器controller

get create controller 控制器名

生成控制器,如果你使用了大写字母,他会把文件名自动变成小写字母+下划线 .类名全写的话,自动变成首字母大写,太过智能了

例如:

create controller HOME

会生成文件:

home_controller.dart

生成类名:

HomeController

create provider 生成provider

get create provider: provider的名字 on 文件夹名字

注意这个on意思是在哪个文件夹里面生成文件,其他get命令也可以用这个语法

例如:

get create provider: provider的名字 on 文件夹名字

generate locales 国际化

get generate locales

注意,直接执行会提示错误 + assets/locales directory does not exist.,告诉你 assets/locales文件不存在

需要自己建立文件夹和2个json文件:

en_US.json

zh_CN.json,如下图:

例如在里面写1个页面的登录和登出的显示用的字符串:

zh_CN.json

{
  "view1": {
    "login": "登录",
    "logout": "退出"
  }
}

en_US.json

{
  "view1": {
    "login": "Login",
    "logout": "Logout"
  }
}

这时候再执行get generate locales 会生成 lib/generated/locales.g.dart 文件

之后要在main.dart中加入:

import '/generated/locales.g.dart';


GetMaterialApp(
	  translationsKeys: AppTranslation.translations,
      locale: const Locale('zh','CN'),//设置默认语言
      fallbackLocale: const Locale('en','US'),//设置上面默认语言出错后备用语言
}

打开locales.g.dart 文件

class LocaleKeys {
  LocaleKeys._();
  static const pg1_login = 'pg1_login';
  static const pg1_logout = 'pg1_logout';
}

class Locales {
  static const zh_CN = {
    'pg1_login': '登录',
    'pg1_logout': '退出',
  };
  static const en_US = {
    'pg1_login': 'Login',
    'pg1_logout': 'Logout',
  };
}

可以看到get帮你生成的字符串.要用到这个字符串的时候,可以用下面2个种代码,他俩是等价的

'pg1_login'.tr 
 LocaleKeys.pg1_login.tr
相关推荐
君蓦8 小时前
Flutter 本地存储与数据库的使用和优化
flutter
problc18 小时前
Flutter中文字体设置指南:打造个性化的应用体验
android·javascript·flutter
lqj_本人1 天前
鸿蒙next选择 Flutter 开发跨平台应用的原因
flutter·华为·harmonyos
lqj_本人1 天前
Flutter&鸿蒙next 状态管理框架对比分析
flutter·华为·harmonyos
起司锅仔1 天前
Flutter启动流程(2)
flutter
hello world smile2 天前
最全的Flutter中pubspec.yaml及其yaml 语法的使用说明
android·前端·javascript·flutter·dart·yaml·pubspec.yaml
lqj_本人2 天前
Flutter 的 Widget 概述与常用 Widgets 与鸿蒙 Next 的对比
flutter·harmonyos
iFlyCai2 天前
极简实现酷炫动效:Flutter隐式动画指南第二篇之一些酷炫的隐式动画效果
flutter
lqj_本人2 天前
Flutter&鸿蒙next 中使用 MobX 进行状态管理
flutter·华为·harmonyos