Écrire des applications nuxt.js dans Python
Notes de libération
npm install # or use yarn
pip install -r requirements.txt
npm run dev @nuxtjs/python dépendance à l'aide du fil ou du NPM à votre projet@nuxtjs/python à la section modules de nuxt.config.js {
modules : [
'@nuxtjs/python'
] ,
python : {
compiler : 'pj' // default
}
}<script lang="py"> .compiler ) Le compilateur par défaut et recommandé est javascripthon mais il est possible d'utiliser d'autres compilateurs (voir ci-dessous).
Installez le transpiler Javascripthon Python. Pour l'instant , vous aurez besoin de la branche principale, par exemple:
pip install -e git+https://gitlab.com/metapensiero/metapensiero.pj#egg=javascripthon
Notez que Javascripthon exige que vous ayez Python 3.5 (ou mieux).
Javascripthon prend en charge la conversion des instructions d'importation Python en importations ES6 telles qu'elles sont utilisées dans Nuxt. Veuillez noter les conversions de syntaxe.
Vous pouvez transmettre une option compiler à Py-chargedeur en utilisant des options de module ou dans une section python dans votre fichier nuxt.config.js .
Transcrypt a son propre système de module afin de l'utiliser, vous pouvez utiliser la norme du module CommonJS ( require d'importer et module.exports ) et il devrait fonctionner. Voir l'exemple py-loader Vuejs.
.vueAstuce Si vous utilisez VIM, vous pouvez obtenir une mise en évidence de syntaxe pour HTML, CSS et Python en installant le plugin VIM-Vue et en appliquant ce patch.
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 pour d'autres fichiers Nuxt 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 >Pour un exemple de travail, voir ici.
yarn install ou npm installnpm run dev Licence MIT
Copyright (c) Sebastian silva [email protected]
Ce module a été démarré à partir du modèle de module par Pooya Parsa et s'appuie fortement sur Python-Webpack-chargedeur par Martim Nascimento et Javascripthon par Alberto Berti.