1

我正在尝试用 Sapper(sveltejs) 重写我的网站(Pug+Express)。我是 sveltejs 的初学者,如果我的问题可能真的很幼稚,请原谅。
我有一个 template.json 文件,其中包含我网站的所有静态数据。在 expressjs 版本中,我const template = require('template.json')使用 pug 模板渲染页面,如下所示

router.get('/:pageName', function(req, res, next) {
  res.render('pages/About', {template: template})

在 sveltejs/sapper 中实现这一目标的等效版本是什么?到目前为止,我做了一个import template from 'template.json'文件app/server.js。然后呢?由于sapper-template使用 polka 而不是 express,我很困惑如何正确使用它。有什么建议吗?

4

1 回答 1

5

您可以将该数据放在routes使用它的页面(即 中的组件)中:

<!-- routes/index.html -->
<h1>{{title}}</h1>

<script>
  import data from './_template.json';

  export default {
    data() {
      return {
        title: data.title
      };
    }
  };
</script>

请注意,我在 , 中添加了一个下划线_template.json,以对路由器隐藏文件——您也可以将 JSON 文件放在routes目录之外。

您可以使用 Express 代替 Polka;只需将in的npm install express每一个出现替换为.polkaapp/server.jsexpress

于 2018-04-14T21:57:29.660 回答