작성
·
290
0
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/redux/4.2.0/redux.min.js"></script>
</head>
<body>
<div id="subject"></div>
<div id="toc"></div>
<div id="control"></div>
<div id="content"></div>
<script>
function subject() {
document.querySelector("#subject").innerHTML = `
<header>
<h1>WEB</h1>
Hello, WEB!
</header>`;
}
function TOC() {
var state = store.getState();
var i = 0;
var liTags = "";
while (i < state.contents.length) {
liTags =
liTags +
`
<li>
<a onclick="
event.preventDefault();
var action = {type:"SELECT", id:${state.contents[i].id}}
store.dispatch(action);
" href="${state.contents[i].id}">
${state.contents[i].title}
</a>
</li>`;
i = i + 1;
}
document.querySelector("#toc").innerHTML = `
<nav>
<ol>${liTags}</ol>
</nav>
`;
}
function control() {
document.querySelector("#control").innerHTML = `
<ul>
<li><a href="/create">create</a></li>
<li><input type="button" value="delete"></li>
</ul>
`;
}
function article() {
document.querySelector("#content").innerHTML = `
<article>
<h2>HTML</h2>
HTML is ...
</article>
`;
}
function reducer(state, action) {
console.log(state, action);
if (state === undefined) {
return {
contents: [
{ id: 1, title: "HTML", desc: "HTML is .." },
{ id: 2, title: "CSS", desc: "CSS is .." },
],
};
}
}
var store = Redux.createStore(reducer);
subject();
TOC();
control();
article();
</script>
</body>
</html>
코드가 이런데 위에 HTML을 누르면 강의처럼 콘솔에 뜨는게 아니라 창이넘어가면서 Cannot GET/%EB%A6%AC%EB%8D%95%EC%8A%A4/1 이런게 뜹니다 뭘 잘못한걸까요 ㅜㅜ.
답변 1
0
var action = {type:"SELECT", id:${state.contents[i].id}}
type에 "" 대신 ''로 바꿔보세요.
태크 작성이 문자열이라 문법 오류가 나네요.
다른 분들은 삽질하지 않으시길..
큰따옴표 안에 큰 따옴표 X
큰따옴표 안에 작은따옴표 O
작은따음표 안에 큰따옴표 O
작은따옴표 안에 작은따옴표 X