样式和事件在 marko 模板中不起作用

Styles and events not working in marko template

我的组件加载正常,但样式未加载,事件也未触发。我正在按照文档进行操作,没有抛出任何错误,但似乎我可能在这里遗漏了一些基本的东西?

查看使用 res.marko 呈现的模板:

import Explanation from "./components/explanation.marko";
<!DOCTYPE html>
<html lang="en">
<head>
  ...
</head>
<body>
  ...
  <include(Explanation, input.explanation) />
  ...
</body>
</html>

explanation.marko file:

class {
  onExplanationClick() {
    console.log("Explanation clicked");
  }
}

style {
  .explanation-paragraph {
    color: red;
  }
}

<div id="explanation" on-click('onExplanationClick')>
  <for (paragraph in input.content)>
    <p class="explanation-paragraph">${paragraph}</p>
  </for>
</div>

服务器端:

app.get("/explanation/:id", async function(req, res) {
  var explanation = await findExplanation(req.params.id);
  var template = require("../../views/explanation/explanation.marko");
  res.marko(template, { explanation, user: req.user });
});

同时使用 marko/node-require 和 marko/express。

您将需要集成模块 bundler/asset 管道。在示例 marko-express app we are using Lasso(资产管道 + JavaScript 模块捆绑器)中。

还有另一个集成 Webpack 的示例应用程序:https://github.com/marko-js-samples/marko-webpack

Marko 团队同时支持 Lasso 和 Webpack,但我们推荐 Lasso,因为它更简单并且需要最少的配置。

请查看 marko-express 应用程序,如果遇到困难,请随时在我们的 Gitter 聊天室中提问:https://gitter.im/marko-js/marko