PS 凡是打印错误获取不到都可以在后面加tostring来进行打印获取
import { View, Text ,Checkbox} from '@tarojs/components'//我们要使用这个先把这个标签引入进来
<Checkbox></Checkbox>//然后在这个里面进行使用
import Taro, { Component } from 'react'
import { View, Text, Checkbox } from '@tarojs/components'
import './index.scss'
export default class Index extends Component {
constructor(props) {//定义check刚开始为false与vue的data里面一样
super(props)
this.state = {
checked: false
}
}
//下面这些是生命周期
componentWillMount() { }
componentDidMount() { }
componentWillUnmount() { }
componentDidShow() { }
componentDidHide() { }
// 这个是多选按钮点击的事件选中状态
handclick = () => {
this.setState({
checked: !this.state.checked
})
}
render() {
const { checked } = this.state//按照对象结构形式展示
return (
<View className='index'>
{/* */}
//checked={checked}这里面的是因为在上面定义过了
<Checkbox checked={checked} onClick={this.handclick}></Checkbox>
<View>
<Text>当前状态:{checked.toString()}</Text>
</View>
{/* */}
</View>
)
}
}
事件处理函数就是点击来处理内部的函数
这边是传递为hello的参数
2种方法
<Checkbox onClick={this.handclick.bind(this,'hello')}></Checkbox>
//然后点击时传递打印出来为hello
handclick (text) {
console.log(text)
}
<Checkbox onClick={()=>this.handclick('hello')}></Checkbox>
//然后点击时传递打印出来为hello
handclick (text) {
console.log(text)
}
这个未完待续 初学react 可以先跳过这个。。。。。。。
//定义函数式是与export defaultXX这边同级定义写的
//这边是定义的组件 自定义名称
function Funfsa(){
return '你好我是函数式组件'
}
//然后在显示这样写
<Funfsa/>
定义的名字为funCo
这个函数式在components文件中的index.js里面写
函数式组件要引入useCallback 在react里面
import Taro, {useCallback } from 'react'
import Taro, {useCallback } from 'react'//首先因为我们要使用taro所有我们要导入它
import { View, Text } from '@tarojs/components'
export default function Funfsa(){
const handleclick=useCallback(()=>{
console.log(12121)
})
return( <View onClick={handleclick}>点我</View>)
}
import FunCo from '../components/funCo'
<FunCo/>
相当于vue的v-model
这个onchange事件没反应
https://blog.csdn.net/qq_33933205/article/details/109702913
onInput使用这个来写
首先要把input引进来
import { View, Text, Checkbox, Input } from '@tarojs/components'
然后在 constructor这个里面定义一个空值
export default class Index extends Component {
constructor(props) {
super(props)
this.state = {
value: ''//定义一个空的value
}
}
//其次在
render() {
const { value } = this.state;// 在这里把value的值拿到
return (
<View className='index'>
<Input value={value} onInput={this.handchange} placeholder="这个是input框"></Input>//然后呢定义吧一个事件
<Text>{value}</Text>//在输入的时候这边显示
</View>
)
}
最后这个是点击事件的写法
handchange=(e)=>{
console.log(e.detail.value)
// 赋值
const {value} = e.detail; //这个是es6写法 首先呢定义一个值
this.setState({
// value:e.detail.value 这个呢是es5 的写法
value:value //这个是es6写法 然后呢放置这里面
})
}