首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nativesct8不具有平台依赖性。

Nativesct8不具有平台依赖性。
EN

Stack Overflow用户
提问于 2021-12-08 06:31:27
回答 1查看 114关注 0票数 1

这是我在NativeScript ( ns )上的第一个项目,所以我对它有点陌生,不知道在ns世界中一切是如何工作的。

对于我的项目,我使用最新的ns版本设置了ns+vue+ts项目,即8.1.5。

在我开始添加一些库之前,一切都很好。第一个警报是安装和安装nativescript-google-maps-sdk,每个教程和官方文档都告诉您需要以这样的方式打开SDK (示例可能有所不同,但所有示例都需要platform):

代码语言:javascript
复制
import * as platform from "platform";
if (platform.isIOS) { 
    GMSServices.provideAPIKey("PUT_API_KEY_HERE");
}
Vue.registerElement('MapView', () => require('nativescript-google-maps-sdk').MapView);

但是我安装的NativeScript没有platfrom,相反,我让它与

代码语言:javascript
复制
import {isIOS } from "@nativescript/core";
if (isIOS) { 
    GMSServices.provideAPIKey("PUT_API_KEY_HERE");
}
Vue.registerElement('MapView', () => require('nativescript-google-maps-sdk').MapView);

我还没有解决的第二个问题是nativescript/geolocation。安装该软件包后,无法运行我的ios仿真器,它出错了:

代码语言:javascript
复制
ERROR in ./node_modules/nativescript-geolocation/geolocation.ios.js 8:15-34
Module not found: Error: Can't resolve 'platform' in '/Users/myuser/projects/app/node_modules/nativescript-geolocation'

我是不是做错了什么,或者8.1.5版本的ns还不受支持?

EN

回答 1

Stack Overflow用户

发布于 2021-12-10 15:43:08

我刚刚开始迁移一个很大的{N} 6.8应用程序到8.1,所以我想我会检查你的问题,因为它也适用于我。我也看到了同样的错误,但是如果您需要的是确定操作系统,则可以使用Application类。见https://github.com/NativeScript/nativescript-cli/issues/5423

编辑12/15/2021:

当我涉猎我自己的迁移时,我发现您必须查看源代码才能看到特定类的导出。平台仍然存在,但没有直接出口。相反,您必须导入各种元素。因此,这样做是可行的:

代码语言:javascript
复制
import { isAndroid, isIOS } from '@nativescript/core';

这确实是不幸的,因为它需要大量的搜索和测试,并进行详细的编码更改。到目前为止,我还没有找到任何可行的移民指南。这个84分钟YouTube视频值得一看,但并不能让你了解这些细节。

如果您刚刚开始,您必须了解新的语法,并且知道大多数现有的示例和文档都需要迁移。

编辑12/15/2021

当我继续的时候,我意识到有些名字根本没有定义。所以,平台确实还在那里,你只需要这样做:

代码语言:javascript
复制
const platform = require("@nativescript/core/platform");

同样,如果您需要文件系统或KnownColors:

代码语言:javascript
复制
const fs = require("@nativescript/core/file-system");
const KnownColors = require("@nativescript/core/color/known-colors");

如果您试图从@nativescript/core导入一个无法识别的名称,那么在构建输出中确实会得到一个已知名称的列表。如果您没有看到您在那里寻找的内容,您可能需要求助于一个完全限定的需求(对于JavaScript)或导入(TypeScript)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70270845

复制
相关文章

相似问题

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