首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nativescript -平台专用代码

Nativescript -平台专用代码
EN

Stack Overflow用户
提问于 2017-09-29 01:07:43
回答 1查看 1.5K关注 0票数 1

我有一个特定于iOS的代码(类定义),并希望包含在一个单独的ios特定文件中。

所以我创建了两个文件

utils2.ios.ts <--在这里添加了我的代码

utils2.android.ts

然后从另一份文件中,我做到了:

导入utils2 =require(“./utils2 2”);

但是我收到一个错误消息,没有找到模块。

我不得不这样做,因为我在代码中有一个类定义,如果我只有一个文件,我会在Android上得到一个运行时错误。

类型记录支持平台特定的文件吗?

或者另一种选择--在ts文件中有可能出现这样的情况吗?

如果ios

执行此操作

结束

类似于C预处理器

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-29 01:41:38

您可以只使用一个utils.ts文件并在其中执行您提到的特定于平台的逻辑。关于module not found的问题可能只是通向该模块的路径问题,而不是模块实际上不存在的问题。还请注意,类型记录并不真正“支持”特定于平台的文件。Nativescript获取这些.android.ts.ios.ts文件,并在运行时加载运行平台上所需的文件。所以只是FYI --这与TS没有关系:)

Nativescript在platform中提供了一个tns-core-modules模块。从代码中的平台模块导入{ isAndroid }{ isIOS },并将其用作

代码语言:javascript
复制
if (isAndroid) { 
  // do android only here 
} else { 
  // ios 
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46480337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档