【vue3】导入的配置和普通的数组,他们是否存在响应式
背景
有的时候我们需要将组件的配置以文件的形式导入,那导入的配置需不需要使用ref
或者reactive
处理成响应式对象呢?
答:不用,貌似导入的配置会有响应式,但是通过isRef
、isReactive
、IsProxy
方法去鉴定的时候返回的false
示例代码:
// dialog.config
const dialogFormConfig = {
formItems: [
{
type: 'input',
field: 'name',
label: '用户名',
placeholder: '请输入用户名'
},
]
}
// user.vue
import { dialogFormConfig } from './config/dialog.config'
console.log(isRef(dialogFormConfig))
console.log(isReactive(dialogFormConfig))
console.log(isProxy(dialogFormConfig))
const testArr = [10, 20, 30]
const test = () => {
testArr.push(Math.random())
console.log(testArr)
dialogFormConfig.formItems.push({
type: 'input',
field: 'test',
label: 'ceshi',
placeholder: '请输入角色',
options: []
})
}