Сбой Nativescript при запуске - PullRequest
0 голосов
/ 03 февраля 2020

Просто хотел протестировать и взглянуть на Nativescript с Vue, но, к сожалению, похоже, что он не работает. После добавления пары строк, следующих за руководством, сразу же получается sh, так что это не самое лучшее из презентации ... Но, возможно, я сделал что-то не так, или руководства больше не работают, как ожидалось, и поэтому я делюсь исходный код, который я добавил, чтобы посмотреть, могу ли я что-то сделать, чтобы он работал правильно:

app. js:

import Vue from 'nativescript-vue'
import VueDevtools from 'nativescript-vue-devtools'

import store from './store'
import Home from './components/Home'

if (TNS_ENV !== 'production') {
    Vue.use(VueDevtools)
    Vue.config.devtools = true
    Vue.config.debug = true
    Vue.config.silent = false
}

new Vue({
    store,
    components: {
        Home
    },
    render: h => h('frame', [h(Home)])
}).$start()

Я добавил VueDevtools и Vuex Store :

store / index. js:

import Vue from 'vue'
import Vuex from 'vuex'
import users from './modules/users'

Vue.use(Vuex)

const debug = process.env.NODE_ENV !== 'production'

const store = new Vuex.Store({
  modules: {
    users
  },
  strict: debug
})

Vue.prototype.$store = store;

export default store

store / modules / users. js:

const namespaced = true
const state = () => getDefaultState()
const mutations = {
  SET_USER: (state, user) => {
    state.user = user
  }
}
const actions = {
  async getUser({ commit }, id) {
    try {
      const user = await this.$axios.$get(`/users/${id}`)
      commit('SET_USER', user)
    } catch (error) {
      throw error.response
    }
  }
}

export default {
  namespaced,
  state,
  mutations,
  actions
}

Как видите, все очень просто. Хранилище, которое я использовал, является рабочим хранилищем из проекта Nuxt, который я должен скопировать в Nativescript sh.

После запуска tns preview на мобильном устройстве выводится Fatal javascript исключение с несколькими трассировками собственного стека (0x101871d50, et c ...):

***** Fatal JavaScript exception - application has been terminated. *****
2020-02-03 10:25:47.484 nsplaydev[14171:3821642] Native stack trace:
1   0x101871d50 NativeScript::reportFatalErrorBeforeShutdown(JSC::ExecState*, JSC::Exception*, bool)
2   0x1018b93b0 -[TNSRuntime executeModule:referredBy:]
3   0x102a7e25c -[UIApplication(PlayLiveSync) swizzled_executeModule:]
4   0x101003524
5   0x192909050 <redacted>
2020-02-03 10:25:47.485 nsplaydev[14171:3821642] JavaScript stack trace:
2020-02-03 10:25:47.485 nsplaydev[14171:3821642] handleCopy(file:///app/vendor.js:4255:46)
at file:///app/vendor.js:3942:36
at on(file:///app/vendor.js:3882:23)
at emit(file:///app/vendor.js:3922:29)
at devtoolPlugin(file:///app/vendor.js:29630:19)
at Store(file:///app/vendor.js:29940:18)
at ./store/index.js(file:///app/bundle.js:412:69)
at __webpack_require__(file:///app/runtime.js:751:34)
at fn(file:///app/runtime.js:121:39)
at file:///app/bundle.js:204:83
at ./app.js(file:///app/bundle.js:266:34)
at __webpack_require__(file:///app/runtime.js:751:34)
at checkDeferredModules(file:///app/runtime.js:44:42)
at webpackJsonpCallback(file:///app/runtime.js:31:39)
at anonymous(file:///app/bundle.js:2:61)
at evaluate([native code])
at moduleEvaluation([native code])
at [native code]
at asyncFunctionResume([native code])
at [native code]
at promiseReactionJob([native code])
2020-02-03 10:25:47.485 nsplaydev[14171:3821642] JavaScript error:
file:///app/vendor.js:4255:46: JS ERROR ReferenceError: Can't find variable: HTMLElement
2020-02-03 10:25:47.487 nsplaydev[14171:3821642] PlayLiveSync: Uncaught Exception
2020-02-03 10:25:47.487 nsplaydev[14171:3821642] *** JavaScript call stack:
(

)
2020-02-03 10:25:47.487 nsplaydev[14171:3821642] *** Terminating app due to uncaught exception 'NativeScript encountered a fatal error: ReferenceError: Can't find variable: HTMLElement
 at
handleCopy(file:///app/vendor.js:4255:46)
at file:///app/vendor.js:3942:36
at on(file:///app/vendor.js:3882:23)
at emit(file:///app/vendor.js:3922:29)
at devtoolPlugin(file:///app/vendor.js:29630:19)
at Store(file:///app/vendor.js:29940:18)
at ./store/index.js(file:///app/bundle.js:412:69)
at __webpack_require__(file:///app/runtime.js:751:34)
at fn(file:///app/runtime.js:121:39)
at file:///app/bundle.js:204:83
at ./app.js(file:///app/bundle.js:266:34)
at __webpack_require__(file:///app/runtime.js:751:34)
at checkDeferredModules(file:///app/runtime.js:44:42)
at webpackJsonpCallback(file:///app/runtime.js:31:39)
at anonymous(file:///app/bundle.js:2:61)
at evaluate([native code])
at moduleEvaluation([native code])
at [native code]
at asyncFunctionResume([native code])
at [native code]
at promiseReactionJob([native code])
', reason: '(null)'
*** First throw call stack:
(0x192ecdeb8 0x1920c7f18 0x10187221c 0x1018b93b0 0x102a7e25c 0x101003524 0x192909050)
libc++abi.dylib: terminating with uncaught exception of type NSException
2020-02-03 10:25:47.487 nsplaydev[14171:3821642] PlayLiveSync: Uncaught Exception

Надеюсь, вы поможете!

...