ahooksjs / useTable

A Progressive Solution for Query Table Scene
https://usetable-ahooks.js.org
MIT License
46 stars 6 forks source link

三方使用style-component版本冲突,从系统里引入固定版本4.4.1是否有影响 #18

Closed caojinjie closed 3 years ago

caojinjie commented 3 years ago

场景描述: 我系统中使用ahooksjs-useFormTable和formily,这两个包都有devDependencies,styled-components,其中版本如图,formily只能支持4.版本,但是ahooks是5+版本,直接安装时系统node_modules中会安装为5+版本,对formily有影响,可能造成样式丢失;

所以我在系统中添加里dependencies,"styled-components": "4.4.1",安装依赖后,useFormTable自身还会带有node_modules/styled-components,为5+版本,在系统中可能会造成版本冲突;

caojinjie commented 3 years ago

image

formily-package.json

{ "name": "root", "private": true, "devEngines": { "node": "8.x || 9.x || 10.x || 11.x", "npm": "6.x" }, "scripts": { "bootstrap": "lerna bootstrap", "clean": "lerna clean", "build": "rimraf -rf packages//lib packages//esm && lerna run build", "build:docs": "node ./scripts/docs.js build -i docs/zh-cn -o docs/zh-cn", "build:docs:en": "node ./scripts/docs.js build -i docs/en-us -o docs/en-us", "start": "node ./scripts/docs.js start -i docs/zh-cn", "start:en": "node ./scripts/docs.js start -i docs/en-us", "sort-api": "node ./scripts/sort-api-table.js", "test": "npm run lint && jest", "test:sc": "jest --watch packages/react-shared-components/src/tests/.spec.tsx", "test:core": "jest packages/core/src/tests/.spec.ts", "test:hook": "jest packages/react/src/tests/.spec.tsx", "test:renderer": "jest packages/react-schema-renderer/src/tests/.spec.tsx", "test:editor": "jest --watch packages/react-schema-editor/src/tests/*.spec.ts", "test:layout": "jest --watch packages//src/tests/layout.spec.tsx", "test:prod": "cross-env TEST_ENV=production npm run build && jest", "doc:core": "doc-scripts start -i packages/core", "doc:react": "doc-scripts start -i packages/react", "doc:editor": "doc-scripts start -i packages/react-schema-editor", "test:watch": "jest --watch", "coverage": "npm run test -- --coverage", "coverage:upload": "rm -rf ./coverage && npm run coverage && node ./scripts/mapCoverage.js && codecov", "prevesion": "npm run build && npm run lint && npm run test", "version:alpha": "npm run prevesion && lerna version prerelease --preid alpha --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "version:beta": "npm run prevesion && lerna version prerelease --preid beta --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "version:rc": "npm run prevesion && lerna version prerelease --preid rc --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "version:patch": "npm run prevesion && lerna version patch --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "version:minor": "npm run prevesion && lerna version minor --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "version:preminor": "npm run prevesion && lerna version preminor --preid beta --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "version:major": "npm run prevesion && lerna version major --force-publish= --no-git-tag-version -m \"chore(versions): publish packages %s\"", "release:force": "lerna publish from-package --yes", "release": "lerna publish", "lint": "eslint --ext .ts,.tsx,.js \"packages//src/.@(ts|tsx|js)\" \"scripts//.js\" --fix", "postinstall": "opencollective-postinstall" }, "resolutions": { "@types/react": "^16.9.41" }, "devDependencies": { "@alifd/next": "^1.19.1", "@babel/cli": "^7.2.0", "@babel/core": "^7.3.3", "@babel/plugin-proposal-class-properties": "^7.2.3", "@babel/plugin-proposal-decorators": "^7.0.0", "@babel/plugin-proposal-export-default-from": "7.0.0", "@babel/plugin-syntax-dynamic-import": "^7.2.0", "@babel/plugin-transform-runtime": "^7.2.0", "@babel/preset-env": "^7.0.0", "@babel/preset-flow": "7.0.0", "@babel/preset-react": "^7.0.0", "@babel/register": "^7.0.0", "@babel/runtime-corejs3": "^7.2.0", "@testing-library/jest-dom": "^4.2.3", "@testing-library/react": "^8.0.0", "@testing-library/react-hooks": "^3.2.1", "@types/jest": "^24.0.18", "@types/node": "^12.6.8", "@typescript-eslint/eslint-plugin": "^2.20.0", "@typescript-eslint/parser": "~2.23.0", "all-contributors-cli": "^6.1.2", "antd": "^4.0.0", "awesome-typescript-loader": "^5.2.1", "babel-eslint": "^10.0.1", "babel-jest": "^24.1.0", "babel-loader": "^8.0.6", "babel-plugin-dynamic-import-node": "^2.2.0", "chalk": "^2.4.2", "chokidar": "^2.1.2", "concurrently": "^4.1.0", "conventional-commit-types": "^2.2.0", "cross-env": "^5.2.0", "cz-conventional-changelog": "^2.1.0", "doc-scripts": "^1.7.24", "eslint": "^5.16.0", "eslint-config-prettier": "^6.0.0", "eslint-plugin-import": "^2.13.0", "eslint-plugin-node": "^7.0.1", "eslint-plugin-prettier": "^3.1.0", "eslint-plugin-promise": "^4.0.0", "eslint-plugin-react": "^7.14.2", "eslint-plugin-react-hooks": "^1.6.1", "execa": "^1.0.0", "findup": "^0.1.5", "fs-extra": "^7.0.1", "ghooks": "^2.0.4", "glob": "^7.1.3", "immutable": "^4.0.0-rc.12", "istanbul-api": "^2.1.1", "istanbul-lib-coverage": "^2.0.3", "jest": "^24.1.0", "jest-codemods": "^0.19.1", "jest-dom": "^3.1.2", "jest-localstorage-mock": "^2.3.0", "jest-styled-components": "6.3.3", "jest-watch-lerna-packages": "^1.1.0", "json5": "^2.1.0", "lerna": "^3.10.1", "lint-staged": "^8.2.1", "majo": "^0.7.1", "markdown-toc": "^1.2.0", "mfetch": "^0.2.27", "moment": "^2.24.0", "monaco-editor": "^0.18.1", "node-sass": "^4.13.0", "onchange": "^5.2.0", "opencollective": "^1.0.3", "opencollective-postinstall": "^2.0.2", "prettier": "^1.18.2", "pretty-format": "^24.0.0", "react": "^16.8.3", "react-dom": "^16.8.3", "react-eva": "^1.1.7", "react-monaco-editor": "^0.32.1", "react-test-renderer": "^16.11.0", "remark-parse": "^6.0.3", "remark-stringify": "^6.0.4", "rimraf": "^3.0.0", "scheduler": "^0.15.0", "semver-regex": "^2.0.0", "staged-git-files": "^1.1.2", "styled-components": "4.4.1", "sw-precache-webpack-plugin": "^1.0.0", "ts-import-plugin": "1.6.1", "ts-jest": "^24.0.2", "ts-node": "^8.3.0", "tsconfig-paths-webpack-plugin": "^3.2.0", "typescript": "~3.8.0", "unified": "^7.1.0", "user-event": "^1.4.4", "wait-for-expect": "^3.0.1", "webpack": "^4.35.3", "workbox-webpack-plugin": "^5.1.1" }, "config": { "ghooks": { "pre-commit": "lint-staged", "commit-msg": "node ./scripts/validate-commit-msg.js" }, "commitizen": { "path": "./node_modules/cz-conventional-changelog" } }, "lint-staged": { "packages//src/.@(ts|tsx|js)": [ "npm run lint", "git add" ], "scripts/.@(ts|tsx|js)": [ "npm run lint", "git add" ], "/*.md": [ "prettier --write", "git add" ] }, "collective": { "type": "opencollective", "url": "https://opencollective.com/formily" }, "dependencies": { "@ant-design/icons": "^4.0.2" } }

caojinjie commented 3 years ago

image

use-form-table,package.json

{ "name": "@ahooksjs/use-form-table", "version": "0.2.0", "scripts": { "build:tsc": "tsc --project tsconfig.build.json --declarationDir ./lib && tsc --project tsconfig.build.json --declarationDir ./es" }, "main": "lib/index.js", "module": "es/index.js", "peerDependencies": { "react": "^16.12.0" }, "files": [ "lib", "es" ], "repository": { "type": "git", "url": "https://github.com/ahooksjs/useTable.git", "directory": "packages/use-form-table" }, "dependencies": { "@ahooksjs/use-table": "^0.2.0", "@formily/react-schema-renderer": "^1.2.9", "moment": "^2.27.0", "react-eva": "^1.1.10", "styled-components": "^5.1.1" } }

monkindey commented 3 years ago

v0.2.1 已经解决