【问题标题】:Angular Components: share variables that need to be changed dynamicallyAngular Components:共享需要动态更改的变量
【发布时间】:2018-12-13 08:21:48
【问题描述】:
我对 Angular 还是很陌生,所以我不确定最好的方法。我的应用程序将进行一些 sparql 查询。每个查询都是一个字符串,需要在每个帖子之前引用和操作。我有两个主要问题。
- 存储这些查询的最佳方式是什么?这些是资产还是服务?
- 如何在发布前将其他变量插入到这些查询中?
这是一个例子:
Query 1 = "select ?s ?p ?o where { <variable to be inserted prior to post> ?o ?p }
【问题讨论】:
标签:
angular
http-post
shared-variable
【解决方案1】:
我过去创建了一个配置服务,它只有一堆 URL 常量,然后我只是在字符串中使用标记来替换变量,然后再使用。例如:
var URL_getList="http://blahblah/getList?myvar={myvar};
希望对您有所帮助。顺便说一句,请忽略错误的格式,我尝试添加空格,因为它的代码但没有用。我也在手机上输入了这个,这并不容易哈哈。
【解决方案2】:
您可以在函数内创建模板并将其导出,因此,每当您想使用具有不同变量的查询模板时,您只需发送到函数,然后取回修改后的查询。这是一个简单的例子:
export const query1 = (newVar) => {
return `select ?s ?p ?o where { ${newVar} ?o ?p }`
}
只要您想使用它,只需:
let test = query1('newVar')
console.log(test)
它将是:
select ?s ?p ?o where{ newVar ?o ?p }
您可以将所有查询模板放在一个文件中,然后使用您需要的特定功能。