收藏
回答

怎么在云函数里定义公共的函数?

js对于时间的格式化没有封装好的API,所以我自己写了个函数进行格式化时间

module.exports = function () {
    const date = new Date()
    const y = date.getFullYear()
    let m = date.getMonth() + 1,
      d = date.getDate(),
      h = date.getHours(),
      i = date.getMinutes(),
      s = date.getSeconds()
    if (m < 10) m = '0' + m
    if (d < 10) d '0' + d
    if (h < 10) h '0' + h
    if (i < 10) i '0' + i
    if (s < 10) s '0' + s
    const t = y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s
    return t
}

然后在云函数中引用

const pub = require('../pub/time.js')


在本地调试时没有问题,但是在预览和真机调试时会报错,报错找不到引用文件。具体是什么问题呢?

回答关注问题邀请回答
收藏

2 个回答

  • fuwanhong
    fuwanhong
    2022-03-01

    time.js放到tmp目录下或者根目录试试

    2022-03-01
    有用
    回复 3
    • ⊙_⊙
      ⊙_⊙
      2022-03-02
      放在cloudfunctions目录下面或者放在其里面的具体的云函数目录下都不行,tmp应该怎么放?
      2022-03-02
      回复
    • fuwanhong
      fuwanhong
      2022-03-02回复⊙_⊙
      只能放在当前云函数目录下,放到其他目录不行,环境是隔离的,要想所有函数都能引用的话,要使用层管理,就是本地调试不方便
      2022-03-02
      回复
    • ⊙_⊙
      ⊙_⊙
      发表于移动端
      2022-03-03回复fuwanhong
      好吧,感谢解惑
      2022-03-03
      回复
  • Mr.Zhao
    Mr.Zhao
    2022-03-01

    你把time.js写到哪了?没在云函数里面吗

    2022-03-01
    有用
    回复 4
    • ⊙_⊙
      ⊙_⊙
      2022-03-02
      time.js放在cloudfunctions目录下,或者cloudfunctions下建个pub目录,或者放到具体的云函数目录内,都试过,只有本地调试可用,真机就不行
      2022-03-02
      回复
    • ⊙_⊙
      ⊙_⊙
      2022-03-02
      写在调用time.js的云函数下是可以的,但是这样做很多云函数都需要用到,就得每个用的云函数下面都放一份time.js。我想弄成公共的,
      2022-03-02
      回复
    • Mr.Zhao
      Mr.Zhao
      2022-03-02回复⊙_⊙
      你可以用层 layer
      2022-03-02
      回复
    • ⊙_⊙
      ⊙_⊙
      发表于移动端
      2022-03-03回复Mr.Zhao
      嗯嗯,谢谢
      2022-03-03
      回复
登录 后发表内容