From cdb45bd3288cf09d0bedbded70aa005e2528792f Mon Sep 17 00:00:00 2001 From: mengxiong10 <15623530290@2163.com> Date: Mon, 18 Nov 2019 21:10:15 +0800 Subject: [PATCH] build: preset-jsx --- .babelrc | 7 +- babel.config.js | 5 +- example/index.html | 2 +- package-lock.json | 163 +++++++++++++++++++++++++++++++++------------ package.json | 5 +- 5 files changed, 131 insertions(+), 51 deletions(-) diff --git a/.babelrc b/.babelrc index f97d0ef..05c7216 100644 --- a/.babelrc +++ b/.babelrc @@ -1,6 +1,7 @@ // Parceljs cann't compile babel.config.js { "presets": [ + ["@vue/babel-preset-jsx"], [ "@babel/preset-env", { @@ -8,10 +9,11 @@ } ] ], - "plugins": ["transform-vue-jsx", "@babel/plugin-transform-object-assign"], + "plugins": ["@babel/plugin-transform-object-assign"], "env": { "test": { "presets": [ + ["@vue/babel-preset-jsx"], [ "@babel/preset-env", { @@ -20,8 +22,7 @@ } } ] - ], - "plugins": ["transform-vue-jsx"] + ] } } } diff --git a/babel.config.js b/babel.config.js index 9a3f02c..69b4c21 100644 --- a/babel.config.js +++ b/babel.config.js @@ -3,6 +3,7 @@ module.exports = api => { api.cache(false); return { presets: [ + ['@vue/babel-preset-jsx'], [ '@babel/preset-env', { @@ -10,10 +11,11 @@ module.exports = api => { }, ], ], - plugins: ['transform-vue-jsx', '@babel/plugin-transform-object-assign'], + plugins: ['@babel/plugin-transform-object-assign'], env: { test: { presets: [ + ['@vue/babel-preset-jsx'], [ '@babel/preset-env', { @@ -23,7 +25,6 @@ module.exports = api => { }, ], ], - plugins: ['transform-vue-jsx'], }, }, }; diff --git a/example/index.html b/example/index.html index cc851b0..f6ff292 100644 --- a/example/index.html +++ b/example/index.html @@ -10,7 +10,7 @@
- + diff --git a/package-lock.json b/package-lock.json index 346d885..ff08132 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1512,7 +1512,8 @@ "version": "7.0.7", "resolved": "https://registry.npm.taobao.org/@types/babel-types/download/@types/babel-types-7.0.7.tgz", "integrity": "sha1-Zn6xZA6AOUNgKAVXN9K5mG7jNuM=", - "dev": true + "dev": true, + "optional": true }, "@types/babel__core": { "version": "7.1.3", @@ -1560,6 +1561,7 @@ "resolved": "https://registry.npm.taobao.org/@types/babylon/download/@types/babylon-6.16.5.tgz", "integrity": "sha1-HFZB22nrjN83jt0ltL53VL7rSLQ=", "dev": true, + "optional": true, "requires": { "@types/babel-types": "*" } @@ -1704,6 +1706,79 @@ "svg-tags": "^1.0.0" } }, + "@vue/babel-preset-jsx": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-jsx/download/@vue/babel-preset-jsx-1.1.2.tgz", + "integrity": "sha1-LhaetMIE6jfKZsLqhaiAv8mdTyA=", + "dev": true, + "requires": { + "@vue/babel-helper-vue-jsx-merge-props": "^1.0.0", + "@vue/babel-plugin-transform-vue-jsx": "^1.1.2", + "@vue/babel-sugar-functional-vue": "^1.1.2", + "@vue/babel-sugar-inject-h": "^1.1.2", + "@vue/babel-sugar-v-model": "^1.1.2", + "@vue/babel-sugar-v-on": "^1.1.2" + } + }, + "@vue/babel-sugar-functional-vue": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-functional-vue/download/@vue/babel-sugar-functional-vue-1.1.2.tgz", + "integrity": "sha1-9+JPugnm8e5wEEVgqICAV1VfGpo=", + "dev": true, + "requires": { + "@babel/plugin-syntax-jsx": "^7.2.0" + } + }, + "@vue/babel-sugar-inject-h": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-inject-h/download/@vue/babel-sugar-inject-h-1.1.2.tgz?cache=0&sync_timestamp=1573270688583&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-sugar-inject-h%2Fdownload%2F%40vue%2Fbabel-sugar-inject-h-1.1.2.tgz", + "integrity": "sha1-ilJ2ttji7Rb/yAeKrZQjYnTm7fA=", + "dev": true, + "requires": { + "@babel/plugin-syntax-jsx": "^7.2.0" + } + }, + "@vue/babel-sugar-v-model": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-model/download/@vue/babel-sugar-v-model-1.1.2.tgz?cache=0&sync_timestamp=1573270693588&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-sugar-v-model%2Fdownload%2F%40vue%2Fbabel-sugar-v-model-1.1.2.tgz", + "integrity": "sha1-H/b9G4ACI/ycsehNzrXlLXN6gZI=", + "dev": true, + "requires": { + "@babel/plugin-syntax-jsx": "^7.2.0", + "@vue/babel-helper-vue-jsx-merge-props": "^1.0.0", + "@vue/babel-plugin-transform-vue-jsx": "^1.1.2", + "camelcase": "^5.0.0", + "html-tags": "^2.0.0", + "svg-tags": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz", + "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", + "dev": true + } + } + }, + "@vue/babel-sugar-v-on": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-on/download/@vue/babel-sugar-v-on-1.1.2.tgz?cache=0&sync_timestamp=1573270693572&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-sugar-v-on%2Fdownload%2F%40vue%2Fbabel-sugar-v-on-1.1.2.tgz", + "integrity": "sha1-su+ZuPL6sJ++rSWq1w70Lhz1sTs=", + "dev": true, + "requires": { + "@babel/plugin-syntax-jsx": "^7.2.0", + "@vue/babel-plugin-transform-vue-jsx": "^1.1.2", + "camelcase": "^5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz", + "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", + "dev": true + } + } + }, "@vue/component-compiler": { "version": "4.1.0", "resolved": "https://registry.npm.taobao.org/@vue/component-compiler/download/@vue/component-compiler-4.1.0.tgz", @@ -1863,6 +1938,7 @@ "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "dev": true, + "optional": true, "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", @@ -1874,6 +1950,7 @@ "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, + "optional": true, "requires": { "is-buffer": "^1.1.5" } @@ -2224,12 +2301,6 @@ "resolve": "^1.12.0" } }, - "babel-helper-vue-jsx-merge-props": { - "version": "2.0.3", - "resolved": "https://registry.npm.taobao.org/babel-helper-vue-jsx-merge-props/download/babel-helper-vue-jsx-merge-props-2.0.3.tgz", - "integrity": "sha1-Iq69OzOQIyjlEyk6jkmSs4T58bY=", - "dev": true - }, "babel-jest": { "version": "24.9.0", "resolved": "https://registry.npm.taobao.org/babel-jest/download/babel-jest-24.9.0.tgz", @@ -2329,12 +2400,6 @@ "@types/babel__traverse": "^7.0.6" } }, - "babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", - "dev": true - }, "babel-plugin-transform-es2015-modules-commonjs": { "version": "6.26.2", "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-modules-commonjs/download/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", @@ -2357,15 +2422,6 @@ "babel-types": "^6.24.1" } }, - "babel-plugin-transform-vue-jsx": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-vue-jsx/download/babel-plugin-transform-vue-jsx-4.0.1.tgz", - "integrity": "sha1-LIvdzoem7wnqpZhp/xv77q/F+I0=", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, "babel-polyfill": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", @@ -3418,6 +3474,7 @@ "resolved": "https://registry.npm.taobao.org/constantinople/download/constantinople-3.1.2.tgz", "integrity": "sha1-1F7XJPV9PRBQABen06iJwTga5kc=", "dev": true, + "optional": true, "requires": { "@types/babel-types": "^7.0.0", "@types/babylon": "^6.16.2", @@ -5753,7 +5810,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -5774,12 +5832,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5794,17 +5854,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -5921,7 +5984,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5933,6 +5997,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5947,6 +6012,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5954,12 +6020,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -5978,6 +6046,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -6058,7 +6127,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -6070,6 +6140,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -6155,7 +6226,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -6191,6 +6263,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -6210,6 +6283,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -6253,12 +6327,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -6906,7 +6982,7 @@ }, "html-tags": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz", "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=", "dev": true }, @@ -8326,7 +8402,8 @@ "version": "1.0.2", "resolved": "https://registry.npm.taobao.org/js-stringify/download/js-stringify-1.0.2.tgz", "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", - "dev": true + "dev": true, + "optional": true }, "js-tokens": { "version": "4.0.0", @@ -8964,7 +9041,7 @@ }, "lodash.kebabcase": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", + "resolved": "https://registry.npm.taobao.org/lodash.kebabcase/download/lodash.kebabcase-4.1.1.tgz", "integrity": "sha1-hImxyw0p/4gZXM7KRI/21swpXDY=", "dev": true }, @@ -9118,7 +9195,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true + "dev": true, + "optional": true }, "loose-envify": { "version": "1.4.0", @@ -11503,7 +11581,8 @@ "version": "1.3.3", "resolved": "https://registry.npm.taobao.org/pug-error/download/pug-error-1.3.3.tgz", "integrity": "sha1-80L7AIdS1YA0wYXeA2At2f/hX6Y=", - "dev": true + "dev": true, + "optional": true }, "pug-filters": { "version": "3.1.1", @@ -11623,7 +11702,8 @@ "version": "2.0.5", "resolved": "https://registry.npm.taobao.org/pug-runtime/download/pug-runtime-2.0.5.tgz", "integrity": "sha1-baeXbDa/IvaOczw1kkDYrnoylTo=", - "dev": true + "dev": true, + "optional": true }, "pug-strip-comments": { "version": "1.0.4", @@ -11639,7 +11719,8 @@ "version": "1.1.8", "resolved": "https://registry.npm.taobao.org/pug-walk/download/pug-walk-1.1.8.tgz", "integrity": "sha1-tAj2fyeRL4wh2i9FtyMMS9Kl6no=", - "dev": true + "dev": true, + "optional": true }, "pump": { "version": "3.0.0", @@ -13337,7 +13418,7 @@ }, "svg-tags": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/svg-tags/download/svg-tags-1.0.0.tgz", "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", "dev": true }, diff --git a/package.json b/package.json index 53cbccc..95947a9 100644 --- a/package.json +++ b/package.json @@ -59,17 +59,14 @@ "@commitlint/cli": "^8.2.0", "@commitlint/config-conventional": "^8.2.0", "@vue/babel-helper-vue-jsx-merge-props": "^1.0.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.0.0", + "@vue/babel-preset-jsx": "^1.1.2", "@vue/component-compiler-utils": "^3.0.0", "@vue/test-utils": "^1.0.0-beta.29", "acorn": "^7.0.0", "autoprefixer": "^9.7.1", "babel-core": "^7.0.0-bridge.0", "babel-eslint": "^10.0.2", - "babel-helper-vue-jsx-merge-props": "^2.0.3", "babel-jest": "^24.9.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "babel-plugin-transform-vue-jsx": "^4.0.1", "conventional-changelog-cli": "^2.0.25", "core-js": "^3.3.5", "coveralls": "^3.0.7",