2015-05-13 16 views
5

Tôi đang cố thiết lập thuộc tính trên một tập hợp các phần tử có điều kiện.Lỗi cú pháp JSX trên PHPStorm

render: { 
    var buttons = []; 
    for (var i = 1; i <= this.props.totalWeeks; i++) { 
     buttons.push(
     <button 
      onClick={ this.changeWeek.bind(this, i) } 
      disabled={ i === this.state.currWeek }>{ i } 
     </button>); 
    } 
} 

Mọi thứ hoạt động tốt trong trình duyệt. Nhưng PHPStorm (phiên bản 8.0.3) đánh dấu biểu thức { i === this.state.currWeek } là lỗi cho giá trị thuộc tính sai.

Tôi đã thử thay đổi điều đó bằng một cuộc gọi chức năng, một biến, v.v., nhưng dường như không làm cho lỗi biến mất. Tôi cũng đã cố gắng để tắt quy tắc kiểm tra trên PHPStorm, nhưng không thể tìm thấy một thiết lập mà có thể biến nó đi.

HỎI

Làm thế nào tôi có thể làm lỗi mà biến mất trong PHPStorm? Nếu đó là một lỗi, thì làm thế nào tôi có thể loại bỏ điều đó bằng cách bổ sung các thuộc tính HTML có điều kiện vào một nhóm các phần tử theo một cách khác?

+0

Có vẻ như một lỗi trong PHPStorm. –

+0

Thật vậy, bạn của tôi ... –

+0

Bạn đã thử nó trong phiên bản EAP v9 chưa? – LazyOne

Trả lời

0

1) Nếu nó render của phản ứng (không phải chức năng tùy chỉnh của bạn), nó phải là "render() {return;}" chống lại mã của bạn

Nó 100% lỗi cú pháp, trình duyệt bỏ qua nó, bởi vì nó nên , nếu bạn sử dụng nó trong cơ thể định nghĩa lớp, cú pháp là tiếp theo:

class Test { 
    objectExample: { some: "value" } 
    functionExample() { return someExecutionCode(); } 
    lambdaFunctionExample =() => { return someExecutionCode(); } 
} 

Nhưng bạn trộn 1 và dòng 2 trong cùng một thời gian, bắt đầu như định nghĩa đối tượng, với cơ thể như một chức năng, không phải là phù hợp với nhau .

2) Hàm render của bạn KHÔNG trả về bất cứ thứ gì, nó tạo mảng, nhưng không trả về.

Các vấn đề liên quan