vue to react
1.0.0
حاول تحويل مكون VUE (دعم JSX و SFC) لتفاعل المكون.
منذ V0.0.8 دعم SFC
تحويل مكون JSX:

تحويل مكون SFC:

المتطلبات الأساسية: node.js (> = 8.0) و NPM (> = 5.0)
$ npm install vue - to - react - gUsage: vtr [options]
Options:
-V, --version output the version number
-i, --input the input path for vue component
-o, --output the output path for react component, which default value is process.cwd ()
-n, --name the output file name, which default value is " react.js "
-h, --help output usage information
أمثلة:
$ vtr -i my/vue/component سيقوم الرمز أعلاه بتحويل my/vue/component.js إلى ${process.cwd()}/react.js .
$ vtr -i my/vue/component -o my/vue -n test سيقوم الرمز أعلاه بتحويل my/vue/component.js إلى my/vue/test.js .
هنا عرض تجريبي.
القائمة التالية يجب أن تكون اهتمامًا عندما تستخدم Vue-to React لتحويل مكون Vue إلى مكون رد الفعل:
// Not support
< div v-bind : class = "{ active: isActive }" > </ div >
< div v - bind : class = "[activeClass, errorClass]" > < / div >
// support
< div v-bind : class = "classes" > </ div >
computed: {
classes ( ) {
// ...
return your - classes ;
}
}
// ...
// react component
// ...
render ( ) {
const classes = your - classes ;
return (
< div class = { classes } > </ div >
)
} // Not support
< div v-bind : style = "{ color: activeColor, fontSize: fontSize + 'px' }" > </ div >
< div v - bind : style = "[baseStyles, overridingStyles]" > < / div >
// support
< div v-bind : style = "style" > </ div >
computed: {
style ( ) {
return {
activeColor : 'red' ,
fontSize : 30
}
}
}
// ...
// react component
// ...
render ( ) {
const style = {
activeColor : 'red' ,
fontSize : 30
} ;
return (
< div style = { style } > </ div >
)
}watch مكون VUEcomponents مكونات VUE إذا كنت تقوم بتحويل مكون JSX. انظر نصيحة المكون. لكن components الدعم تدعم عندما تقوم بتحويل SFC.v-if ، v-else ، v-show ، v-for ، v-bind ، v-on ، v-text و v-html . // Not support
< div : msg = "msg" @ click = "clickHandler" > < / div >
// Support
< div v-bind : msg = "msg" v-on : click = "clickHandler" > </ div > // Life-cycle methods relations mapping
const cycle = {
'created' : 'componentWillMount' ,
'mounted' : 'componentDidMount' ,
'updated' : 'componentDidUpdate' ,
'beforeDestroy' : 'componentWillUnmount' ,
'errorCaptured' : 'componentDidCatch' ,
'render' : 'render'
} ; // ...
computed: {
// support
test ( ) {
return your - computed - value ;
} ,
// not support
test2 : {
get ( ) { } ,
set ( ) { }
}
}
// ... // vue component
// ...
computed: {
// support
test ( ) {
this . title = 'messages' ; // Don't do this, it won't be handle and you will receive a warning.
return this . title + this . msg ;
}
}
// ...
// react component
// ...
render ( ) {
const test = this . state . title + this . state . msg ;
}
// ... يتم إصدار هذا الريبو تحت معهد ماساتشوستس للتكنولوجيا.