为什么我得到:`Uncaught SyntaxError:意外的令牌const`

时间:2016-08-10 16:56:37

标签: javascript

我创建了一个空div,其ID为warning_messages,并使用javascript将该div存储在const内,但却抛出错误:Uncaught SyntaxError: Unexpected token const

这是div代码:

<div id="warning_messages"></div>

和javascript:

const warningMessages = document.getElementById('warning_messages');

使用var代替const也会引发同样的错误:Uncaught SyntaxError: Unexpected token var

她是我完整的JS:

// Initialize Firebase
var config = {
  ...
};
firebase.initializeApp(config);

//Handle Account Status
firebase.auth().onAuthStateChanged(user => {
  if(user) {
    console.log('Logged in');
  } else {
    console.log('Logged out');
  }
});

//Handle Authentication
document.getElementsByTagName('button')[0].addEventListener('click', event => {
  const email = document.getElementById('email').value;
  const password = document.getElementById('password').value;

  firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
    // Handle Errors here.
    var errorCode = error.code;
    var errorMessage = error.message;

    switch(errorCode) {

      const warningMessages = document.getElementById('warning_messages');
      const warningMessagesContainer = document.createElement('p');
      warningMessagesContainer.setAttribute('id', 'warningMessagesContainer');

      case 'auth/wrong-password':
        const invalidText = document.createTextNode('Invalid Password!');
        break;

      case 'auth/invalid-email':
        const invalidText = document.createTextNode('Invalid Email!');
        break;

      warningMessagesContainer.appendChild(invalidText);
      warningMessages.appendChild(warningMessagesContainer);
}
 });

});

1 个答案:

答案 0 :(得分:3)

除了switch语句中的case之外,你不能有任何其他内容。

您的错误是您开始在没有案例的情况下在交换机内部使用变量。