diff --git a/.gitignore b/.gitignore index 79b1b4b8..69e1643a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ .history .cache .temp +.hound dist *.log node_modules diff --git a/packages/fes-plugin-enums/package.json b/packages/fes-plugin-enums/package.json index b40b196a..0827a304 100644 --- a/packages/fes-plugin-enums/package.json +++ b/packages/fes-plugin-enums/package.json @@ -1,6 +1,6 @@ { "name": "@fesjs/plugin-enums", - "version": "2.0.1", + "version": "2.0.2", "description": "@fesjs/plugin-enums", "main": "lib/index.js", "files": [ diff --git a/packages/fes-plugin-enums/src/runtime/core.tpl b/packages/fes-plugin-enums/src/runtime/core.tpl index 4e56751a..dfa1b3e3 100644 --- a/packages/fes-plugin-enums/src/runtime/core.tpl +++ b/packages/fes-plugin-enums/src/runtime/core.tpl @@ -10,17 +10,17 @@ Object.keys(_ENUMS).forEach(key => { /** * 获取枚举键值,如不传key,则返回name的枚举数组 * @param {string} name 枚举名称 - * @param {string} key 枚举键名称 + * @param {string} [key] 枚举键名称 * @param {{ * dir: string * extend: Array<{ * key:string * dir:string * transfer: Function - * }>}} opt 配置项 + * }>}} [opt] 配置项 */ function get(name, key, opt = { dir: 'value', extend: []}) { - if (Object.prototype.toString.call(key) === '[object Object]') { + if (Object.prototype.toString.call(key) === '[object Object]') { opt = key key = null } @@ -33,7 +33,7 @@ function get(name, key, opt = { dir: 'value', extend: []}) { } else { value = format(list, opt.extend) } - return typeof value === 'object' ? readonly(value) : value + return typeof value === 'object' ? readonly(value) : value } /** @@ -86,7 +86,7 @@ function concat(name, _enum, opt = { keyName: '', valueName: '', before: false, /** * 格式化枚举 - * @param {Array} _enum 枚举数组 + * @param {Array} _enum 枚举数组 * @param {Array<{key:string, dir:string, transfer: Function}>} extend 格式化规则 */ function format(_enum = [], extend = []) { @@ -108,7 +108,7 @@ function format(_enum = [], extend = []) { /** * 根据dir解析value的属性值 * @param value - * @param dir + * @param dir */ function parseValueDir(value, dir='value') { if (!['object', 'function'].includes(typeof value) || !value || !dir || dir === 'value') return value diff --git a/packages/fes-plugin-windicss/package.json b/packages/fes-plugin-windicss/package.json index e0973104..9fc6c663 100644 --- a/packages/fes-plugin-windicss/package.json +++ b/packages/fes-plugin-windicss/package.json @@ -1,6 +1,6 @@ { "name": "@fesjs/plugin-windicss", - "version": "2.0.4", + "version": "2.0.5", "description": "@fesjs/plugin-windicss", "main": "lib/index.js", "files": [ @@ -31,7 +31,6 @@ "vue": "^3.0.5" }, "dependencies": { - "qs": "^6.10.2", "windicss-webpack-plugin": "^1.6.0" } } diff --git a/packages/fes-plugin-windicss/src/index.js b/packages/fes-plugin-windicss/src/index.js index e522b43b..6add0d27 100644 --- a/packages/fes-plugin-windicss/src/index.js +++ b/packages/fes-plugin-windicss/src/index.js @@ -1,7 +1,6 @@ import WindiCSSWebpackPlugin from 'windicss-webpack-plugin'; import { resolve } from 'path'; -import qs from 'qs'; export default (api) => { api.describe({ @@ -23,15 +22,6 @@ export default (api) => { ...api.config.windicss } ]); - memo.module - .rule('vue-custom') - .resourceQuery((query) => { - if (!query) { - return false; - } - const parsed = qs.parse(query.slice(1)); - return parsed.vue != null; - }).use('vue-custom-loader').loader(require.resolve('./pitcher')); return memo; }); }; diff --git a/packages/fes-preset-built-in/package.json b/packages/fes-preset-built-in/package.json index 8c5db0fd..f5e2a1ed 100644 --- a/packages/fes-preset-built-in/package.json +++ b/packages/fes-preset-built-in/package.json @@ -1,6 +1,6 @@ { "name": "@fesjs/preset-built-in", - "version": "2.0.9", + "version": "2.0.11", "description": "@fesjs/preset-built-in", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -61,6 +61,7 @@ "postcss-flexbugs-fixes": "^5.0.2", "postcss-loader": "^4.2.0", "postcss-safe-parser": "^5.0.2", + "qs": "^6.10.2", "raw-loader": "^4.0.2", "style-loader": "^2.0.0", "url-loader": "^4.1.1", diff --git a/packages/fes-plugin-windicss/src/pitcher.js b/packages/fes-preset-built-in/src/plugins/commands/webpackConfig/pitcher.js similarity index 100% rename from packages/fes-plugin-windicss/src/pitcher.js rename to packages/fes-preset-built-in/src/plugins/commands/webpackConfig/pitcher.js diff --git a/packages/fes-preset-built-in/src/plugins/commands/webpackConfig/vue.js b/packages/fes-preset-built-in/src/plugins/commands/webpackConfig/vue.js index 99a8c1b8..40eef753 100644 --- a/packages/fes-preset-built-in/src/plugins/commands/webpackConfig/vue.js +++ b/packages/fes-preset-built-in/src/plugins/commands/webpackConfig/vue.js @@ -1,4 +1,4 @@ -// import webpack from 'webpack'; +import qs from 'qs'; export default function createVueWebpackConfig({ config, @@ -15,6 +15,16 @@ export default function createVueWebpackConfig({ }) .end(); + webpackConfig.module + .rule('vue-custom') + .resourceQuery((query) => { + if (!query) { + return false; + } + const parsed = qs.parse(query.slice(1)); + return parsed.vue != null; + }).use('vue-custom-loader').loader(require.resolve('./pitcher')); + webpackConfig .plugin('vue-loader-plugin') .use(require('vue-loader').VueLoaderPlugin); diff --git a/packages/fes-preset-built-in/src/plugins/generateFiles/core/plugin/index.js b/packages/fes-preset-built-in/src/plugins/generateFiles/core/plugin/index.js index 9439d434..b6fd9933 100644 --- a/packages/fes-preset-built-in/src/plugins/generateFiles/core/plugin/index.js +++ b/packages/fes-preset-built-in/src/plugins/generateFiles/core/plugin/index.js @@ -1,17 +1,9 @@ -import { readFileSync, existsSync } from 'fs'; +import { readFileSync } from 'fs'; import { join } from 'path'; import { winPath } from '@fesjs/utils'; import { runtimePath } from '../../../../utils/constants'; +import { getAppPath } from '../../../../utils/getAppEntryPath'; -function getAppPath(absSrcPath) { - for (const suffix of ['.js', '.ts', '.jsm']) { - const p = winPath(join(absSrcPath, `app${suffix}`)); - if (existsSync(p)) { - return p; - } - } - return null; -} export default function (api) { const { diff --git a/packages/fes-preset-built-in/src/utils/generateFiles.js b/packages/fes-preset-built-in/src/utils/generateFiles.js index c450a3ae..1399f1ba 100644 --- a/packages/fes-preset-built-in/src/utils/generateFiles.js +++ b/packages/fes-preset-built-in/src/utils/generateFiles.js @@ -1,5 +1,5 @@ import { chokidar, lodash, winPath } from '@fesjs/utils'; -import { join } from 'path'; +import { getAppPath } from './getAppEntryPath'; export default async ({ api, watch }) => { const { paths } = api; @@ -44,8 +44,7 @@ export default async ({ api, watch }) => { type: api.ApplyPluginsType.add, initialValue: [ paths.absPagesPath, - join(paths.absSrcPath, 'app.js'), - join(paths.absSrcPath, 'app.ts') + getAppPath(paths.absSrcPath) ] }); lodash diff --git a/packages/fes-preset-built-in/src/utils/getAppEntryPath.js b/packages/fes-preset-built-in/src/utils/getAppEntryPath.js new file mode 100644 index 00000000..191033a7 --- /dev/null +++ b/packages/fes-preset-built-in/src/utils/getAppEntryPath.js @@ -0,0 +1,13 @@ +import { join } from 'path'; +import { existsSync } from 'fs'; +import { winPath } from '@fesjs/utils'; + +export function getAppPath(absSrcPath) { + for (const suffix of ['.js', '.ts', '.jsm', '.jsx', '.tsx']) { + const p = winPath(join(absSrcPath, `app${suffix}`)); + if (existsSync(p)) { + return p; + } + } + return null; +} diff --git a/packages/fes-template-h5/package.json b/packages/fes-template-h5/package.json index 180328e0..014c66be 100644 --- a/packages/fes-template-h5/package.json +++ b/packages/fes-template-h5/package.json @@ -42,14 +42,14 @@ "devDependencies": { "@webank/eslint-config-webank": "0.3.1", "@ttou/postcss-px-to-viewport": "1.1.4", - "@vue/compiler-sfc": "3.2.2" + "@vue/compiler-sfc": "^3.2.2" }, "dependencies": { "@fesjs/fes": "^2.0.0", "@fesjs/plugin-icon": "^2.0.0", "@fesjs/plugin-request": "^2.0.0", "@fesjs/plugin-windicss": "^2.0.0", - "vue": "3.2.2" + "vue": "^3.2.2" }, "private": true } \ No newline at end of file diff --git a/packages/fes-template-h5/src/pages/index.vue b/packages/fes-template-h5/src/pages/index.vue index 2ec56fc7..85d16f8d 100644 --- a/packages/fes-template-h5/src/pages/index.vue +++ b/packages/fes-template-h5/src/pages/index.vue @@ -1,5 +1,5 @@