Javascript SvelteJSGithubAPI const urlParams=新的URLSearchParams(window.location.search); const username=urlParams.get('usrname'); const repo=urlparms.get('repo'); const headers=新的头({'Authorization':'Basic'+btoa('usr:pass')) 出口让星、发行、观察者、分叉、回购名称、回购所有人; 导出函数执行器(事件){ 让数据=`${username}/${repo}`; event.preventDefault() 如果(数据!=“”){ 让url=`https://api.github.com/repos/${data}`; fetch(url,headers).then(response=>response.json()).then(data=>{data.stargazers\u count=stars,data.watchers\u count=watchers,data.forks\u count=forks,data.open\u issues\u count=issues,data.name=repo\u name,data.owner.login=repo\u owner}); } } 表册 {星星} {forks} {观察者} {问题}
当我传递查询字符串时,它不起作用。这可能是一件非常愚蠢的事情,很抱歉我刚刚开始学习。您的fetch返回值未被使用,fetch将返回一个承诺,而不是立即值,因此您必须检查如何在svelte中使用异步代码Javascript SvelteJSGithubAPI const urlParams=新的URLSearchParams(window.location.search); const username=urlParams.get('usrname'); const repo=urlparms.get('repo'); const headers=新的头({'Authorization':'Basic'+btoa('usr:pass')) 出口让星、发行、观察者、分叉、回购名称、回购所有人; 导出函数执行器(事件){ 让数据=`${username}/${repo}`; event.preventDefault() 如果(数据!=“”){ 让url=`https://api.github.com/repos/${data}`; fetch(url,headers).then(response=>response.json()).then(data=>{data.stargazers\u count=stars,data.watchers\u count=watchers,data.forks\u count=forks,data.open\u issues\u count=issues,data.name=repo\u name,data.owner.login=repo\u owner}); } } 表册 {星星} {forks} {观察者} {问题},javascript,html,svelte,templating,Javascript,Html,Svelte,Templating,当我传递查询字符串时,它不起作用。这可能是一件非常愚蠢的事情,很抱歉我刚刚开始学习。您的fetch返回值未被使用,fetch将返回一个承诺,而不是立即值,因此您必须检查如何在svelte中使用异步代码 <script> const urlParams = new URLSearchParams(window.location.search); const username= urlParams.get('usrname'); const repo= urlPa
<script>
const urlParams = new URLSearchParams(window.location.search);
const username= urlParams.get('usrname');
const repo= urlParams.get('repo');
const headers = new Headers({'Authorization': 'Basic ' + btoa('usr:pass')})
export let stars, issues, watchers, forks, repo_name, repo_owner;
export function exec(event) {
let data = `${username}/${repo}`;
event.preventDefault()
if (data != "") {
let url = `https://api.github.com/repos/${data}`;
fetch(url, headers).then(response => response.json()).then(data => {data.stargazers_count = stars, data.watchers_count = watchers, data.forks_count = forks, data.open_issues_count = issues, data.name = repo_name, data.owner.login = repo_owner});
}
}
</script>
<head>
<meta charset="">
<meta name="viewport" content="width=, initial-scale=">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css" integrity="sha512-+4zCK9k+qNFUR5X+cKL9EIR+ZOhtIloNl9GIKS57V1MyNsYpYcUrUeQc9vNfzsWfV28IaLL3i96P9sdNyeRssA==" crossorigin="anonymous" />
<title>Listing</title>
</head>
<body>
<div class="stat-container">
<div class="stars">
<i class="far fa-star"></i> <span class="text-stars">{ stars }</span>
</div>
<div class="forks">
<i class="fas fa-code-branch"></i> <span class="text-forks">{ forks }</span>
</div>
<div class="watchers">
<i class="far fa-eye"></i> <span class="text-watchers">{ watchers }</span>
</div>
<div class="issues">
<i class="fas fa-exclamation"></i> <span class="text-stars">{ issues }</span>
</div>
</div>
</body>
<style>
</style>