Questions tagged «dart»

Dart是用于构建Web和移动应用程序的基于类的静态(和强烈)类型的编程语言。Dart编译为现代JavaScript以在浏览器中运行,并编译为本机代码以在Android和iOS等移动平台上运行。Dart还可以在命令行上运行脚本和服务器端应用程序。


1
不建议使用InheritedFromWidgetOfExactType,而是使用dependOnOnInheritedWidgetOfExactType
自Flutter 1.12发布以来,我的以下代码: static MyInheritedWidget of(BuildContext context) { return context.inheritFromWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget; } 警告以下内容: “ inheritFromWidgetOfExactType”已被弃用,不应使用。请改用DependOnInheritedWidgetOfExactType。v1.12.1之后不推荐使用此功能。尝试用替换成员替换不赞成使用的成员。 但是当我尝试替换它时,它不起作用: static MyInheritedWidget of(BuildContext context) { return context.dependOnInheritedWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget; } 有人知道怎么做吗?谢谢!
23 flutter  dart 

3
Flutter-如何减少设备上的应用程序大小
Google PlayStore中我的应用程序捆绑包下载大小约为23 MB: 但是,为什么安装后,磁盘上的应用程序大小显着增加到83 MB: 任何想法为什么会这样,因为: 1)Flutter的资产文件(图像,声音和字体)仅在11 MB左右的项目上 2)磁盘上Flutter源代码(.dart)的大小仅为1.4 MB 3)Android Native Resource / icon(Res)仅约800 KB 关于我在下面使用的flutter插件: dependencies: flutter: sdk: flutter flutter_localizations: sdk: flutter angles: ^1.0.1 app_settings: ^1.0.5 archive: ^2.0.8 cached_network_image: ^1.1.1 carousel_slider: ^1.3.0 cron: ^0.2.1 crypto: ^2.0.6 cupertino_icons: ^0.1.2 date_format: ^1.0.5 device_id: ^0.1.3 dio: ^2.0.0 easy_alert: ^0.0.2 localstorage: ^2.0.0 …
17 android  gradle  flutter  dart  apk 

3
如何在另一个代码生成器的顶部运行代码生成器?
使用source_gen堆栈创建代码生成器,如何使生成器生成将作为另一个生成器(更具体地讲json_serializable)输入的代码? 例如,考虑: class Example extends Generator { @override String generate(LibraryReader library, BuildStep buildStep) { return ''' @JsonSerializable(nullable: false) class Person { final String firstName; final String lastName; final DateTime dateOfBirth; Person({this.firstName, this.lastName, this.dateOfBirth}); factory Person.fromJson(Map<String, dynamic> json) => _PersonFromJson(json); Map<String, dynamic> toJson() => _PersonToJson(this); } '''; } } 这是代码生成器的示例,该代码生成器输出代码,然后将其发送到 json_serializable …
14 flutter  dart 

5
flutter-需要流控制集合,但是不是吗?
升级flutter(主要版本和稳定版本)和dart之后,我收到关于实验的错误-未为我在项目中使用的各种for循环启用flow-control-collections。我尝试使用此条目修复它,但这使事情变得奇怪。因此,现在出现以下错误,告诉我需要启用control-flow-collections实验,同时告诉我不再需要它。 我正在使用的每个for循环都会出现此错误。 这是我的扑打--version Stable: Flutter 1.12.13+hotfix.5 • channel stable • https://github.com/flutter/flutter.git Framework • revision 27321ebbad (13 days ago) • 2019-12-10 18:15:01 -0800 Engine • revision 2994f7e1e6 Tools • Dart 2.7.0 Master: Flutter 1.13.6-pre.16 • channel master • https://github.com/flutter/flutter.git Framework • revision fcaf9c4070 (2 days ago) • 2019-12-21 14:03:01 -0800 Engine …
14 flutter  dart  upgrade 

5
rxdart 0.23.1中弃用了Observable
我刚刚升级到,rxdart 0.23.1并且无论在哪里Observable上课,都突然出现错误。我已经阅读了文档中的重大更改,并且已指定使用rxdart_codemod集成在pubspec.yaml文件中的软件包,并运行以下命令pub global activate rxdart_codemod会引发-bash: pub: command not found错误。我已flutter正确安装,并且flutter doctor似乎运行良好。是否有一些其他类具有replace Observable,但在文档中找不到任何有关它的信息。当然,我可以代替Observable使用Stream从DART语言,但真的很想知道什么路径是否rxdart包需要为它指定它走的是优势dart extension。采用类似的方法combineLatest2是不可能的Dart's Stream 所以这不是替换的好选择吗?
14 flutter  dart  rxdart 

7
Flutter-为iOS构建,但是为iOS Simulator构建了链接和嵌入式框架'App.framework'
在使用Xcode 13.4 beta更新到Catalina 10.15.4 beta之后,该模拟器还将Simulator更新为13.4(921.4)。 该应用程序可以在物理连接的设备上编译并正确运行,但是任何设备的仿真器都无法通过此阶段。 我弄错了 为iOS构建,但是为iOS Simulator构建了链接和嵌入式框架'App.framework'。 要么 为iOS Simulator构建,但为iOS构建了链接和嵌入式框架'App.framework'。 我怎样才能解决这个问题?

3
如何使用StreamBuilder更新TextField的值?
我有一个textfield,我sqflite在我的应用程序中使用数据库。该sqflite有,我需要分配给我的价值textfield 这是我的textfield代码 StreamBuilder<String>( stream: patientHealthFormBloc.doctorName, builder: (context, snapshot) { return TextFormField( initialValue: patientHealthFormBloc.doctorNameValue, onChanged: (value) { patientHealthFormBloc.doctorNameChanged(value); }, ... 现在,在initstate我课堂上的方法中,我正在从数据库中获取价值。这是异步操作,因此需要时间。 我的bloc类具有如下代码 Function(String) get doctorNameChanged => _doctorName.sink.add; 因此,一旦我从数据库中获得价值,我就会立即致电 doctorNameChanged("valuefromdatabase"); 但我看不到文本字段中的值。我的数据库中也有一个值。是否可以不使用TextEditingController或来更新值setState。我是个试图避免那些因为我的课是很多chuncks和方式过于复杂,使用任何上述我一直在使用与同样的方法试了划分RadioButton,并CheckBox和他们似乎正确更新。_doctorName.stream.value数据库中存在的值也会更新, 但textfield不会显示任何数据。我也试图改变颜色,textfield所以那里没有问题,以及我能够看到我输入的内容。 我已经对该应用程序做了一个小演示https://github.com/PritishSawant/demo/tree/master/lib sqflite我正在使用shared preferences而不是使用,但是问题仍然存在

1
何时在Flutter中使用Provider.of <X>与Consumer <X>
我仍然在扑朔迷离地围绕状态管理技术,对何时何地使用Provider.of&lt;X&gt;vs. 感到困惑Consumer&lt;X&gt;。我从文档中了解(我认为),当我们要访问数据时在这两者之间进行选择时,可以使用Provider.of,但不需要更改UI。因此,以下内容(来自文档)可以访问数据并在发生新事件时更新UI: return HumongousWidget( // ... child: AnotherMonstrousWidget(// &lt;- This widget will rebuild on new data events // ... child: Consumer&lt;CartModel&gt;( builder: (context, cart, child) { return Text('Total price: ${cart.totalPrice}'); }, ), ), ); 而在我们只需要数据的地方,不想使用UI进行重建,我们可以Provider.of&lt;X&gt;将listen参数设置为false,如下所示: Provider.of&lt;CartModel&gt;(context, listen: false).add(item); \\Widget won't rebuild 但是,listen由于不是必需的,因此以下内容也将运行: Provider.of&lt;CartModel&gt;(context).add(item); \\listener optional 因此,这给我带来了一些问题: 这是区别Provider.of&lt;X&gt;和区分的正确方法吗Consumer&lt;X&gt;?前者不会更新UI,后者会更新吗? 如果listen未设置为,false则默认情况下将重新构建小部件还是不重新构建?如果listen设置为true怎么办? 为什么要Provider.of选择完全重建UI的选项Consumer呢?


4
Flutter ChangeNotifierProvider构建器已弃用
我的main.dart中有以下代码: main() { runApp( MultiProvider( providers: [ ChangeNotifierProvider(builder: (context) =&gt; Auth()), // /**problem here. builder displayed with strikethrough line**/ ], child: App(), ), ); } 从大约2天前开始,我的visual studio代码显示以下警告: 所以我不建议使用ChangeNotifierProvider上的builder参数。我到处搜索,但找不到该Builder参数的替代方法。那么如何消除这些警告呢?以下是我flutter --version在Windows 10上使用命令的Flutter版本 &gt; flutter --version Flutter 1.9.1+hotfix.6 • channel stable • https://github.com/flutter/flutter.git Framework • revision 68587a0916 (3 months ago) • 2019-09-13 19:46:58 …
12 flutter  dart 

3
Flutter Push通知未显示在IOS上
我在Flutter和IOS的Push通知方面遇到问题。 我的设置和起作用的东西: 1)我安装了该firebase_messaging: ^5.1.6软件包,没有错误/按照他们对IOS的所有说明进行操作 2)我已请求用户获得IOS许可并接受接收推送通知 3)我能够在IOS和Android设备上获得FCM令牌 4)我在Apple开发人员部分中创建了一个密钥,并将该密钥添加到FCM 5)我已关闭应用程序/在测试时将其发送到后台-仍然没有运气 6)我已使用Xcode将google-service-info文件添加到Runner 7)我在XCode Capabilities中添加了推送通知和后台通知 8)我正在iPhone 7物理设备和物理iPad上进行测试 我已使用curl将通知发送到IOS设备 curl -X POST --header "Authorization: key=&lt;myAuthKEY&gt;" \ --Header "Content-Type: application/json" \ https://fcm.googleapis.com/fcm/send \ -d "{\"to\":\"&lt;myDeviceKey&gt;\",\"notification\":{\"body\":\"Hello\"},\"priority\":10}" 我收到了Firebase的成功回复 {"multicast_id":&lt;SomeIdHere&gt;,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"&lt;SomeIdHere&gt;"}]} 这是我检索令牌的方法: firebaseMessaging.getToken().then((String token) { _authModel.setNotificationToken(token); }); 在IOS上运行该应用程序时,没有出现任何Firebase错误。 我已经搞砸了两天了,所以有点烦人,以上所有内容似乎都可以在Android上使用。 任何建议,请。 Flutter Doctor: Doctor summary (to see all details, run flutter …


1
如何使用Android Studio生成的注释将dart文件保存在文件系统中?
我喜欢Android Studio和Visual Studio如何为每个右括号生成注释,但是当我在notepad ++或任何其他文本编辑器中打开相同文件时,看不到这些注释。有没有一种方法可以生成保存的dart文件,以便将这些注释存储为文本代码的一部分(在注释中)? 这是一个代码示例,说明代码在android studio中的外观。 但是用记事本打开时,它没有注释MaterialApp。我猜想android studio中有一些设置可以让我保存带有生成注释的文件,因此它在git等Android Studio之外非常有用。

4
我应该在结尾还是开头调用super.initState?
我对在哪里叫super.initSate()颤振感到困惑?在某些代码示例中,它在开头被调用,而在其他示例中,则被称为结尾。有区别吗? 我试图用谷歌搜索,但是没有找到关于此函数调用位置的任何解释。 哪一个是正确的? void initState() { super.initState(); //DO OTHER STUFF } 要么 void initState() { //DO OTHER STUFF super.initState(); }
10 flutter  dart 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.