在 Nativescript Playground 中导入 npm 包
Posted
技术标签:
【中文标题】在 Nativescript Playground 中导入 npm 包【英文标题】:Importing npm packages in Nativescript Playground 【发布时间】:2019-08-20 11:11:22 【问题描述】:我正在尝试学习nativescript-vue
,我正在使用 Nativescript 的 Playground 来试用我的示例代码。我正在尝试使用nativescript-localstorage
包,以便我可以将一些信息存储到本地存储中:
每当我尝试保存项目时,都会出现使用编译错误
以下是错误:
编译 nativescript-localstorage/localstorage.js 时出错。 未知:我们发现了一个不是 NodePath 实例的路径。可能是由于错误的序列化。
我按照教程添加了包,因为我的代码如下所示:
import Vue from 'nativescript-vue';
import Vuex from 'vuex';
import localStorage from 'nativescript-localstorage';
import userStore from './user-store';
//For local storage of vuex tools
const NSVuexPersistent = store =>
// Init hook.
let storageStr = localStorage.getItem('ns-vuex-persistent');
if (storageStr)
store.replaceState(JSON.parse(storageStr))
store.subscribe((mutation, state) =>
// Subscribe hook.
localStorage.setItem('ns-vuex-persistent', JSON.stringify(state));
)
;
Vue.use(Vuex);
const debug = process.env.NODE_ENV !== 'production';
export default new Vuex.Store(
modules:
userStore
,
strict: debug,
plugins: [NSVuexPersistent]
)
由于项目没有得到保存,所以我没有分享链接。帮我解决它。谢谢。
【问题讨论】:
【参考方案1】:nativescript-vue
打包在 Preview APK 中,因此可以导入为
import Vue from 'nativescript-vue'
但是nativescript-localstorage
是您在项目中安装的东西,所以在 Playground 中您应该使用相对路径来导入模块,例如
import * as localStorage from "../nativescript-localstorage"
// Or
const localStorage = require("../nativescript-localstorage");
你可以使用import name from "package"
,只有当包在它的导出中标记了一些东西为默认值时,这个语法在 ES6 和 Vue 插件中是常用的。 nativescript-localstorage
默认没有导出任何内容。
【讨论】:
以上是关于在 Nativescript Playground 中导入 npm 包的主要内容,如果未能解决你的问题,请参考以下文章
NativeScript-Vue:如何安装 BottomNavigation 组件
使文件输入字段在Android nativescript vue webview上工作