想象一下,在webapp的标题内显示用户的jsrender名称和姓氏.我传递给模板一个对象是"用户"对象.然后在模板中,我显示{{name}}和{{surname}}.但是,如果"User"对象为null或未确定,我如何检查内部模板?我只能检查姓名或姓氏是否为空(或空).
检查空值的正确方法是什么?例如,对象'Order'与另一个嵌套对象'Shipping'具有'id'和'name'属性.Shippinig对象存在且不为null,但其属性为null.
如果我使用"{{如果shipping.id}}"模板我总是得到这个错误:{错误:类型错误:无法读取属性空的"身份证"}这似乎航运为空,即使它是不
当返回的对象为null时(例如,当搜索没有返回结果时),这也应该是有用的,并且我想显示模板而不是另一个
谢谢
我按照教程将 Universal 集成到我们的 Angular 9 应用程序中。现在我们已经配置了 server.ts。
在每个教程中我都会看到:
// Example Express Rest API endpoints
// app.get('/api/**', (req, res) => { });
Run Code Online (Sandbox Code Playgroud)
进而:
server.get(
'*.*',
express.static(distFolder, {
maxAge: '1y',
})
);
Run Code Online (Sandbox Code Playgroud)
如果我们像这样保留它,我想每个请求都会被缓存,/api 的内容也会被缓存。这是正确的吗?我们的应用程序有很多“产品页面”,其中库存和价格可能会经常变化。因此,我们需要始终拥有新鲜的库存和价格。因此,我不会缓存从“/api/”路径(或https://api.my-app.com “,如果需要绝对路径)中的 API 调用返回的服务器数据。保留所有内容如果我没记错的话,上面写的应该缓存所有内容。我做了一个测试,直接在数据库中更改价格,我希望看到旧的价格,但事实并非如此,我总是看到新鲜的。所以我怀疑是缓存机制不起作用。而且当我浏览组件时,我继续看到每个 api 调用(未缓存)
有人可以更好地解释一下这个机制吗?
另一个问题是:如果缓存有效,如何在节点中清除它?节点将所有内容缓存在内存中。我认为当我们停止节点时缓存会被清除。这是正确的吗?
这是我的包 json:
"scripts": {
"ng": "node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng",
"start": "npm run ng -- serve",
"serve:server": "node ./dist-server/main.js",
"serve:server:debug": "node --inspect ./dist-server/main.js",
"start:server": "npm run build:server && node ./dist-server/main.js",
"start:server:debug": "npm run build:server && node ./dist-server/main.js --inspect",
"build": "npm run ng …Run Code Online (Sandbox Code Playgroud)