我尝试使用新的 show 语法来减少已编译的js代码的大小。只要我不需要任何窗口事件,这样就可以正常工作。
当我添加窗口来显示时,编辑说一切都很好。当我运行应用程序时,我得到:
Exception: NoSuchMethodError : method not found: 'get:window'
Receiver: Instance of 'Toolbar'
Arguments: []
Stack Trace: #0 Object._noSuchMethod (dart:core-patch:1261:3)
#1 Object.noSuchMethod (dart:core-patch:1264:25)
#2 Toolbar._init (...toolbar.dart:93:5)
#3 Toolbar.Toolbar.initialize (...toolbar.dart:47:10)
#4 main (...toolbar.dart:29:21)
有没有其他方法可以在不使用窗口变量的情况下获取窗口实例?
答案 0 :(得分:2)
你确定使用show实际上有助于编译JavaScript代码的大小吗?你不应该这样做。由于树摇动和死代码消除,只有您使用的内容才会显示在编译输出中。
你使用show来严格控制你导入的内容,这显然是什么东西来自哪些库。如果您在不使用show的情况下导入大量库,则很难分辨哪些库来自哪里,这对于非常大的代码库来说可能是一个挑战。
如果导入两个具有使用相同名称的函数或类的不同库,也可以使用show。通过使用show,您可以指定所需的那个。