Skip to content

Package.json(没有就新建,在项目跟目录)

json
{
	"dependencies": {
		"cross-env": "^7.0.3",
		"dayjs": "^1.11.9",
		"dingtalk-jsapi": "^3.0.27",
		"js-base64": "^3.7.5",
		"lodash.assign": "^4.2.0",
		"true-case-path": "^2.2.1"
	},
	"scripts": {
		"linux:h5": "INIT_CWD=`pwd` && cd ../uniapp-cli && cross-env UNI_INPUT_DIR=$INIT_CWD/ UNI_OUTPUT_DIR=$INIT_CWD/dist UNI_PLATFORM=h5 VUE_APP_ENV=production NODE_ENV=uni-build node ../uniapp-cli/bin/uniapp-cli.js",
		"linux:h5:test": "INIT_CWD=`pwd` && cd ../uniapp-cli && cross-env UNI_INPUT_DIR=$INIT_CWD/ UNI_OUTPUT_DIR=$INIT_CWD/dist UNI_PLATFORM=h5 VUE_APP_ENV=development NODE_ENV=uni-build node ../uniapp-cli/bin/uniapp-cli.js"
	}
}

当前目录下的dist

UNI_OUTPUT_DIR=$INIT_CWD/dist

环境区别

VUE_APP_ENV=development

在/js/config/index.js

js
let appUrl = ''
let goMeeduUrl = ''
let visitUrl = ''


// #ifdef H5
if (process.env.VUE_APP_ENV === 'development' || process.env.NODE_ENV == 'development') {
  console.log('运行环境:development')
  appUrl = 'https://etestback.hcehr.com'
  goMeeduUrl = 'https://etestgo.hcehr.com'
  visitUrl = 'https://etest.hcehr.com/h5/go'
} else if (process.env.VUE_APP_ENV === 'production' || process.env.NODE_ENV == 'uni-build') {
  console.log('运行环境:production')
  appUrl = 'https://zhikuapi.hcehr.com'
  goMeeduUrl = 'https://zhikugo.hcehr.com'
  visitUrl = 'https://zhiku.hcehr.com/h5/go'
}
// #endif

找到windows下的组件然后上传到linux机器上

上传完解压(基本知识)

compile-node-sass uniapp-cli 跟你项目目录是同级的

ps: compile-node-sass, unapt-cli的来源

下载HBuilderX编辑器,根目录下HBuilderX->plugins->compile-node-sass, unapt-cli

这两个包是必要的 放在你项目的上一级目录

然后在你的项目创建一个 package.json文件

json
{
	"uni-app": { //可不用
		"scripts": {
			"build:test": {
				"title": "build:test",
				"env": {
					"UNI_PLATFORM": "h5",
					"H_NODE_ENV": "development"
				}
			},
			"build:pro": {
				"title": "build:pro",
				"env": {
					"UNI_PLATFORM": "h5",
					"H_NODE_ENV": "production"
				}
			}
		}
	},
	"dependencies": {
		"cross-env": "^7.0.3",
		"dingtalk-jsapi": "^3.0.27",
		"lodash.assign": "^4.2.0",
		"true-case-path": "^2.2.1"
	},
	"scripts": {
		"linux:h5": "INIT_CWD=`pwd` && cd ../uniapp-cli && cross-env UNI_INPUT_DIR=$INIT_CWD/ UNI_OUTPUT_DIR=$INIT_CWD/dist UNI_PLATFORM=h5 NODE_ENV=uni-build node ../uniapp-cli/bin/uniapp-cli.js"
	}
}

大坑请注意 no-saas这里官方给的文件是错的(他提示叫你下载的也是错误的)

HIPOMDMODEDVLOLILQO0EWWW QMILaPO CII/DIIF LMIaDO CII。S请注意运行模式下,
因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。

:开始编译当前项目至 h5 平台...--> LibSass 的二进制文件 (www/compisass/node modules/node-sass-china/vendor/linux-r64-93/binling,node)缺失,请执行下面3条命今下载对应版本的二进制文件: (有可能引发此错误的原因是 Node 版本变更)
mkdir -p /wuw/compile-node-sass/node_modules/node-sass-china/vendor/linux-x64-93
cd /www/compile-node-sass/node_modules/node-sass-china/vendor/linux-x64-93
curl -o binding. node http://cdn. npm. taobao. org/dist/node-sass/v4.7.2/linux-x64-93 binding. node
https://cdn.npmmirror.com/binaries/node-sass/v4.7.2/linux-x64-93binding.node

This XML file does not appear to have any style information associated with it. The document tree is shown below.

根本没有这个文件 起码要v9.0.0才有 93

因为官方没有给linux的binding.node所以要自己下载到complie-node-sass下面

complie-node-sass/node-sass-china/vendor

只有windows

下载binding.node

执行三行代码

mkdir -p /换成你项目的上级目录/compile-node-sass/node_modules/node-sass-china/vendor/linux-x64-93
 
cd /换成你项目的上级目录/compile-node-sass/node_modules/node-sass-china/vendor/linux-x64-93

curl -o binding.node https://registry.npmmirror.com/-/binary/node-sass/v9.0.0/linux-x64-93_binding.node

然后就基本能运行了

yarn install 
yarn run linux:h5

打包好的文件就在当前dist目录下

Lucking