【发布时间】:2018-01-14 13:48:39
【问题描述】:
我正在努力让 JavaScript Contentful SDK 在我的 Nativescript 应用程序中工作。可悲的是,我是 NativeScript 的新手,所以可能缺少一些基本的东西。希望有人可以提供帮助:)
该模块以通常的方式安装在我的 NativeScript 项目中:
npm install contentful
然后我制作了一个简单的模块(基于我在 Github https://github.com/contentful-labs/product-catalogue-web.ts 找到的示例):
import {ContentfulClientApi, createClient} from 'contentful';
export class ContentfulService {
cdaClient: ContentfulClientApi;
constructor() {
this.cdaClient = createClient({
space: 'spaceId',
accessToken: 'token'
});
}
getContent() {
this.cdaClient.getContentTypes()
.then(function(response) {
console.log(response.items);
return response.items;
})
}
}
在 NativeSctipt 视图模型中:
import { ContentfulService } from "../shared/cms";
let cms = new ContentfulService();
cms.getContent();
...但什么也没发生。没有错误或调试输出,但是 Native Script 视图模型根本不做任何事情 - 代码不执行。如果我从构造函数中删除了createClient() 代码,并且我只是在getContent() 中添加了一个console.log,那么当我从视图模型中调用getContent() 时console.log 会按预期工作
如果我在 NativeScript 之外尝试这个,例如使用 Contentful 仪表板中的样板节点项目,按预期工作。
我想使用 SDK 的原因是我需要通过同步来支持离线内容,而 SDK 似乎让这很容易(如果我可以让它工作的话!)。
感谢您的帮助
【问题讨论】:
标签: javascript node.js nativescript contentful