diff --git a/package.json b/package.json index 726e5704e0..85eae95d06 100644 --- a/package.json +++ b/package.json @@ -90,7 +90,8 @@ "publish:beta": "npm publish --tag beta", "prepare": "husky && npm run generate:file && npm run generate:file:taro && npm run generate:file:taro:pages", "prepublishOnly": "node scripts/prepublish.js", - "postpublish": "node scripts/postpublish.js" + "postpublish": "node scripts/postpublish.js", + "upgradeTaro": "pnpm --dir ./packages/nutui-taro-demo upgradeTaro" }, "lint-staged": { "*.{scss,md}": "prettier --write", diff --git a/packages/nutui-taro-demo/package.json b/packages/nutui-taro-demo/package.json index 83b2d6eafd..7071bb3836 100644 --- a/packages/nutui-taro-demo/package.json +++ b/packages/nutui-taro-demo/package.json @@ -41,7 +41,8 @@ "dev:rn:jmapp": "VITE_APP_PROJECT_ID=jmapp npm run build:rn -- --watch", "dev:qq:jmapp": "VITE_APP_PROJECT_ID=jmapp npm run build:qq -- --watch", "dev:jd:jmapp": "VITE_APP_PROJECT_ID=jmapp npm run build:jd -- --watch", - "dev:quickapp:jmapp": "VITE_APP_PROJECT_ID=jmapp npm run build:quickapp -- --watch" + "dev:quickapp:jmapp": "VITE_APP_PROJECT_ID=jmapp npm run build:quickapp -- --watch", + "upgradeTaro": "chmod +x scripts/taro/upgradeTaro && ./scripts/taro/upgradeTaro" }, "browserslist": [ "last 3 versions", diff --git a/packages/nutui-taro-demo/scripts/taro/upgradeTaro b/packages/nutui-taro-demo/scripts/taro/upgradeTaro new file mode 100755 index 0000000000..cfa215f7a4 --- /dev/null +++ b/packages/nutui-taro-demo/scripts/taro/upgradeTaro @@ -0,0 +1,50 @@ +#!/bin/bash + +get_package_version() { + grep "\"$1\"" package.json | sed -E 's/.*"\^*~*([^"]+)".*/\1/' +} + +set_package_version() { + local package=$(echo "$1" | sed 's/\//\\\//g') + local latest_version=$2 + + if [[ $package ]] && [[ $latest_version ]]; then + sed -E -i '' "s/(\"$package\": )\"[^\"]*\"/\1\"$latest_version\"/g" package.json + + echo "成功替换package.json文件中的 $package 版本号为 $latest_version" + fi + +} + +echo "检查最新版本..." + +lasterTaroVersion=$(npm view @tarojs/cli@beta version --registry=https://registry.npmjs.org) +lasterJdTaroVersion=$(npm view @jdtaro/taro-platform-jdharmony version --registry=http://registry.m.jd.com) +lasterJdTaroCppVersion=$(npm view @jdtaro/plugin-platform-jdharmony-cpp version --registry=http://registry.m.jd.com) + +echo "最新版本号为:" +if [[ $lasterTaroVersion ]]; then + echo " @tarojs/*: $lasterTaroVersion" +fi + +if [[ $lasterJdTaroVersion ]]; then + echo " @jdtaro/taro-platform-jdharmony: $lasterJdTaroVersion" +fi + +if [[ $lasterJdTaroCppVersion ]]; then + echo " @jdtaro/taro-platform-jdharmony: $lasterJdTaroCppVersion" +fi + +echo " +" + +if [ -f "package.json" ]; then + + set_package_version @tarojs/.+ $lasterTaroVersion + + set_package_version @jdtaro/taro-platform-jdharmony $lasterJdTaroVersion + + set_package_version @jdtaro/plugin-platform-jdharmony-cpp $lasterJdTaroCppVersion +else + echo "当前目录下没有package.json文件" +fi \ No newline at end of file