我正在使用JS,并希望确保所传递的类型正确,即使它是非React组件也是如此。
例如
class phoneNumber {
constructor(number) {
this.number
}
requestOtpMessage = async () => {
//Would send boolean if otp is sucessfully sent
return true
}
verifyOtp = async otpNumber => {
const otpVerified = true
if (otpVerified) return true
return false
}
changeNumber = async number => {
// TODO: Should
console.log(`Changing number`, number)
}
}
export default phoneNumber
在这里,我需要确保用户始终在构造函数中传递数字。
对于基于功能和基于React类的组件,我正在使用props,但是由于这不是React组件。不使用打字稿怎么办?我也希望同样的事情也适用于Redux reducers状态吗?
import propTypes from 'prop-types'
import {AUTH, SIGNOUT} from './../constants/auth'
import {LOADING, ERROR_MESSAGE} from './../constants/globalData'
const initialState = {
userId: null,
isVerified: null,
isAuthenticated: null
}
export default function(state = initialState, action) {
switch (action.type) {
case AUTH:
return {
...state
}
case SIGNOUT:
return {
...state
}
default:
return state
}
}
答案 0 :(得分:0)
不使用打字稿怎么办?
根据您的个人资料-您之前的问题(how-to-use-flow-correctly-in-react)-您已经使用过FLOW
。
typesript
和flow
都可以在react之外使用。
如果您不喜欢打字稿-可能会选择HAXE-类似的语法,严格键入-f.e haxe-react或coconut(具有受启发的生命周期)。