【问题标题】:How do I include files for my sever in __sapper__ build in Svelte / Sapper如何在 Svelte / Sapper 的 __super__ 构建中包含我的服务器的文件
【发布时间】:2020-11-08 11:36:08
【问题描述】:

我目前正在尝试在 sapper-project/src/server.js 中配置的 sapper 服务器中包含一个名为 Parse 的服务器中间件。

express().use('/api', const api = new ParseServer({
    databaseURI: 'mongodb://localhost:27017/dev',
    cloud: __dirname + '/cloud/main.js',
    appId: 'myAppId',
    masterKey: 'masterKeyTest', //Add your master key here. Keep it secret!
    serverURL: 'http://localhost:3000/api',  // Don't forget to change to https if needed
}))

它需要一个名为 cloud 的强制属性,该属性需要一个路径字符串,用于导入云功能的服务器脚本文件。建服务器时__dirname指的是生成的__sapper__目录。问题是我不知道如何在 Sapper 的构建结果中包含 /cloud/main.js

我收到此错误,因为我将/cloud/main.js 放在任何位置,因为它未包含在__sapper__ 构建文件中。

Error: Cannot find module '/Users/username/Developer/sapper-project/__sapper__/dev/server/cloud/main.js'

【问题讨论】:

    标签: javascript node.js express svelte sapper


    【解决方案1】:

    想通了。汇总插件副本(“rollup-plugin-copy”)在构建时复制路径。这是我的解决方案:

    import copy from 'rollup-plugin-copy'
    export default {
        client: {...}
        sever: {
            ...
          plugins: [
            copy({
                targets: [
                    { src: 'src/cloud', dest: '__sapper__/build/server' }, 
                    { src: 'src/cloud', dest: '__sapper__/dev/server' }
                 ]
             })
          ]
       }
    }
    
    

    希望投入生产时不会出现问题。

    【讨论】:

      猜你喜欢
      • 2021-03-03
      • 2020-06-06
      • 2020-01-07
      • 2021-05-18
      • 2021-05-21
      • 2021-04-05
      • 1970-01-01
      • 2021-02-22
      • 2020-02-13
      相关资源
      最近更新 更多