Schreiben Sie nuxt.js Apps in Python
Versionshinweise
npm install # or use yarn
pip install -r requirements.txt
npm run dev @nuxtjs/python -Abhängigkeit mit Garn oder NPM hinzu@nuxtjs/python zu modules Abschnitt von nuxt.config.js hinzu {
modules : [
'@nuxtjs/python'
] ,
python : {
compiler : 'pj' // default
}
}<script lang="py"> .compiler Parameter). Compiler Standard und empfohlen ist Javascripthon, aber es ist möglich, andere Compiler zu verwenden (siehe unten).
Installieren Sie den Javascripthon Python Transpiler. Im Moment brauchen Sie den Master -Zweig z.
pip install -e git+https://gitlab.com/metapensiero/metapensiero.pj#egg=javascripthon
Beachten Sie, dass Javascripthon erfordert, dass Sie Python 3.5 (oder besser) haben.
JavascripThon unterstützt die Konvertierung von Python -Importanweisungen in ES6 -Importe, die in Nuxt verwendet werden. Bitte beachten Sie die Syntaxkonvertierungen.
Sie können eine compiler -Option an py-loader übergeben, indem Sie Moduloptionen oder in einem python Abschnitt in Ihrer Datei nuxt.config.js verwenden.
Transcrypt hat ein eigenes Modulsystem. Um es zu verwenden, können Sie den CommonJS -Modulstandard (für das Import und module.exports require . EXPORTS) und es sollte funktionieren. Siehe das Beispiel py-loader Vuejs.
.vue -DateienTipp Wenn Sie VIM verwenden, können Sie die Syntax-Hervorhebung für HTML, CSS und Python erhalten, indem Sie das VIM-VUE-Plugin installieren und diesen Patch anwenden.
hello.vue :
< template >
< div >
Nuxt {{ best_lang }}
</ div >
</ template >
< script lang =" py " >
class Component :
def __init__ ( self ) :
self [ ' data '] = lambda: { ' best_lang ': ' Python ' }
__default__ = Component ( )
</ script >.py -Dateien für andere Nuxt -Dateien store/index.py
from vuex import Store
def increment ( state ):
state . counter = state . counter + 1
def createStore ():
return Store (
state = { 'counter' : 0 },
mutations = { 'increment' : increment }
)
__default__ = createStore pages/counter.vue
< template >
< h2 > {{ $store.state.counter }} </ h2 >
< button @click =" $store.commit('increment') " > +1 </ button >
</ template >Für ein funktionierendes Beispiel siehe hier.
yarn install oder npm installnpm run dev MIT -Lizenz
Copyright (C) Sebastian Silva [email protected]
Dieses Modul wurde von Pooya Parsa aus dem Modul-Template gestartet und stützt sich stark auf Python-Webpack-Loader von Martim Nascimento und Javascripthon von Alberto Berti.