कोलाहल plugin docs का कहना है कि:कोलाहल प्लगइन क्रम जब गैर env विकल्पों के साथ env विकल्पों विलय
- प्लगइन्स प्रीसेट से पहले चलाते हैं।
- प्लगइन ऑर्डरिंग सबसे पहले है।
- प्रीसेट ऑर्डरिंग को उलट दिया गया है (पहले तक अंतिम)।
कोलाहल .babelrc docs का कहना है कि:
विकल्प एक निश्चित पर्यावरण के लिए विशेष में विलय कर दिया और गैर env विशिष्ट विकल्प के ऊपर लिख रहे हैं।
दस्तावेज़ यह नहीं कहते कि वे कैसे विलय किए जाते हैं।
मैं बॉयलरप्लेट रिएक्ट प्रोजेक्ट react-slingshot का उपयोग कर रहा हूं, और मैं कक्षा गुणों का रूपांतरण करना चाहता हूं। परियोजना babel-preset-stage-1
का उपयोग करती है, जिसमें babel-plugin-transform-class-properties
शामिल है।
class Example extends Component {
static propTypes = {
...
}
}
.babelrc
कि इस परियोजना में है:
{
"presets": [
"react",
"stage-1"
],
"env": {
"development": {
"presets": [
"latest",
"react-hmre"
]
},
"production": {
"presets": [
["latest", {
"es2015": {
"modules": false
}
}]
],
"plugins": [
"transform-react-constant-elements",
"transform-react-remove-prop-types"
]
},
"test": {
"presets": [
"latest"
]
}
}
}
लेकिन जब यह उसी रूप में उपयोग करते हुए, मैं:
Module build failed: SyntaxError: Missing class properties transform.
5 | class Example extends Component {
> 6 | static propTypes = {
| ^
7 | ...
8 | }
9 |
वर्ग गुण को बदलने मुझे इस तरह कोड लिखने देना चाहिए वर्ग गुण परिवर्तन वहां है, लेकिन जाहिर है कि ऑर्डरिंग बेकार है।
मैं इसे मैन्युअल env प्रीसेट में गैर env प्रीसेट मर्ज करके किसी भी त्रुटि के बिना संकलित करने के लिए, लेकिन अब पुनरावृत्ति का एक बहुत है पाने के लिए क्या किया:
{
"env": {
"development": {
"presets": [
"latest",
"react-hmre",
"stage-1",
"react"
]
},
"production": {
"presets": [
["latest", {
"es2015": {
"modules": false
}
}],
"stage-1",
"react"
],
"plugins": [
"transform-react-constant-elements",
"transform-react-remove-prop-types"
]
},
"test": {
"presets": [
"latest",
"stage-1",
"react"
]
}
}
}
वहाँ प्लगइन आदेश निर्दिष्ट करने के लिए कोई तरीका है जब env और non-env विकल्प दोनों का उपयोग करते हैं?