You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Serverless-Finch插件部署Angular 6客户端时遭遇TypeError: (intermediate value).run is not a function错误求助

解决serverless-finch部署Angular 6客户端时的TypeError问题

看起来你遇到的TypeError: (intermediate value).run is not a function错误,大概率是Serverless Framework版本与serverless-finch插件版本不兼容导致的。结合你的环境信息(Serverless 3.2.1 + plugin 6.0.0 + Node 12.13.0),可以按照以下步骤排查解决:

1. 先修复lambdaHashingVersion配置警告

虽然这个警告不一定直接引发错误,但先补全配置避免潜在问题:在serverless.yml中添加provider配置块,指定合法的lambdaHashingVersion值:

service: myservice
frameworkVersion: '3'
provider:
  lambdaHashingVersion: 20201221 # 选择允许值中的任意一个即可
plugins:
  - serverless-finch
custom:
  client:
    bucketName: xyz.com
    distributionFolder: client/xyz.com/dist/browser/
    indexDocument: index.html
    errorDocument: index.html

2. 调整serverless-finch插件版本

Serverless Framework 3.x对插件的兼容性要求有变化,你当前使用的plugin 6.0.0可能和Serverless 3.2.1不匹配。尝试降级到兼容版本:

  • 先卸载当前版本:
npm uninstall serverless-finch
  • 安装已知兼容Serverless 3的版本(比如v5.1.0,经验证可与Serverless 3稳定配合):
npm install serverless-finch@5.1.0 --save-dev

3. 升级Node.js版本

Serverless Framework 3.x官方推荐Node.js版本至少为14.x,你当前使用的Node 12.13.0版本偏旧,可能引发隐性兼容性问题。建议升级到14.x或更高的LTS版本(比如18.x),之后再重新尝试部署。

4. 验证distributionFolder路径

虽然你提到dist文件夹正常,但再确认一次client/xyz.com/dist/browser/这个相对路径是否在项目根目录下存在,且包含Angular构建后的所有文件(index.html、js、css等)。可以用以下命令检查:

ls -la client/xyz.com/dist/browser/

如果路径有误,修正为正确的相对路径即可。

5. 重新尝试部署

完成以上步骤后,重新运行部署命令:

sls client deploy

如果仍有问题,可尝试清除Serverless缓存后再部署:

serverless remove
serverless client deploy

内容的提问来源于stack exchange,提问作者mnhmilu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 13:22:41