如何将Cordova包裹在现有的nuxt.js项目周围?

时间:2019-04-10 20:26:51

标签: cordova vue.js nuxt.js

我有一个现有的nuxt.js项目。现在,我想为Android和IOS部署我的代码,因此我想使用Cordova。

我做了很多研究,但找不到解决方案。我找到了似乎可以完成工作的插件https://github.com/m0dch3n/vue-cli-plugin-cordova。我安装它并运行“ npm run cordova-serve-android”,但它给了我这个错误:

This relative module was not found:

* ./src/main.js in multi (webpack)-dev-server/client?http://192.168.0.28:8080/sockjs-node 
(webpack)/hot/dev-server.js 
./src/main.js, multi (webpack)-dev-server/client?http://localhost (webpack)/hot/dev-server.js 
(webpack)-dev-server/client?http://192.168.0.28:8080/sockjs-node ./src/main.js

不幸的是,github插件页面上的Nuxt并没有一个单一的问题,因此我认为该插件不适用于Nuxt。是否有与Nuxt兼容的教程或插件?

1 个答案:

答案 0 :(得分:1)

我做了一个示例库,尝试查找错误,您可以将其用作示例。基本上,您将这几件事添加到您的nuxt配置中

mode: 'spa',
generate: {
    dir: 'www',
},
build: {
   publicPath: '/android_asset/www/front-end',
},
scripts: [
  {
    src: '/cordova.js',
    type: 'text/javascript',
  },
],

这当然是针对android的,可以调整ios的公共路径。然后您要做的就是

nuxt generate

设置脚本将文件夹从www/android_asset/www/front-end移至www/front-end

cordova add platform android@latest --save
cordova run android

这无需使用任何额外的插件,只需将cordova添加到现有的nuxt存储库中即可。但是,它还不完整,仅举一个例子,它仍然需要index.js,并需要等待cordova文档中的设备准备就绪。

https://github.com/amritk/min-repro-nuxt-cordova