是否将var从另一个文件导入到main.dart? [英] Importing var to main.dart from another file?

查看:0
本文介绍了是否将var从另一个文件导入到main.dart?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

checkContact.dart

Future<void> checkContactPermission() async {
  var status = await Permission.contacts.status;
  if (!status.isGranted) {
    PermissionStatus permissionStatus = await Permission.contacts.request();
    status = await Permission.contacts.status;
    if (status.isDenied) {
      PermissionStatus permissionStatus = await Permission.contacts.request();
    }
  }
  if (status.isGranted) {
    var contacts = await ContactsService.getContacts(withThumbnails: false);
    var list = contacts;
    list.shuffle();
    var FamilyMember = (list.first.phones?.first.value);
    await FlutterPhoneDirectCaller.callNumber('$FamilyMember');
  }
}

main.dart

AwesomeDialog(
    context: context,
    dialogType: DialogType.SUCCES,
    borderSide:
    const BorderSide(color: Colors.green, width: 3),
    width: double.infinity,
    buttonsBorderRadius:
    const BorderRadius.all(Radius.circular(2)),
    animType: AnimType.TOPSLIDE,
    title: 'Family member call receiver',
    desc: '$FamilyMember',   <------ here is the problem
我希望将$FamilyMember中的$FamilyMember显示在main.dart上。上面的代码给我一个错误,说FamilyMember未定义print('$FamilyMember')checkContact.dart上运行良好,但为什么在main.dart上出现问题?

推荐答案

首先需要在checkContactPermission函数外部定义familyMember变量。 如果checkContact.dart位于不同的文件中,则将它们导入到main.dart文件中。

这将是结束代码。

checkContact.dart

var familyMember = '';

Future<void> checkContactPermission() async {
  var status = await Permission.contacts.status;
  if (!status.isGranted) {
    PermissionStatus permissionStatus = await Permission.contacts.request();
    status = await Permission.contacts.status;
    if (status.isDenied) {
      PermissionStatus permissionStatus = await Permission.contacts.request();
    }
  }
  if (status.isGranted) {
    var contacts = await ContactsService.getContacts(withThumbnails: false);
    var list = contacts;
    list.shuffle();
    familyMember = (list.first.phones?.first.value ?? '');
    await FlutterPhoneDirectCaller.callNumber('$familyMember');
  }
}

main.dart

import 'checkContact.dart';

AwesomeDialog(
    context: context,
    dialogType: DialogType.SUCCES,
    borderSide:
    const BorderSide(color: Colors.green, width: 3),
    width: double.infinity,
    buttonsBorderRadius:
    const BorderRadius.all(Radius.circular(2)),
    animType: AnimType.TOPSLIDE,
    title: 'Family member call receiver',
    desc: '$familyMember',   <------ the problem will go away

这篇关于是否将var从另一个文件导入到main.dart?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆