添加
编辑
删除
这里的tableHeader我们已经定于好了类型,但是呢,tableItem却识别不出类型来,直接显示unknown类型
经过一番检查发现是tsconfig.json文件配置问题
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"types": [
"element-plus/global"
"isolatedModules": true,
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"strict": true,
"skipLibCheck": true
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"]
由于target: "es5",这个typeScript内置的JS API版本太低,改成 ES2015就行
"compilerOptions": {
"target": "es2015",
"module": "commonjs",
"types": [
"element-plus/global"
"isolatedModules": true,
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"strict": true,
"skipLibCheck": true
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"]
或者修改新增一下 "lib": ["es2017","DOM"], 也是可以的,如下
"compilerOptions": {
"target": "es5",
"lib": ["es2017","DOM"],
"module": "commonjs",
"types": [
"element-plus/global"
"isolatedModules": true,
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"strict": true,
"skipLibCheck": true
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"]
修改完就没问题了
<template> <el-table :data="tableData" style="width: 1200px"> <el-table-column v-for="tableItem in tableHeader" :fixed="tableItem.fixed" :prop="tableItem.prop" :label="tableItem.label" :width="tableItem.w.
TypeScript未知解析器 :joker:
TypeScript是在编译时静态强制正确类型的好工具,但是当处理来自“外部世界”的未知数据时,TypeScript可能很快变成错误的安全性。
typescript-
unknown
-parser
使用
ES6类解析未知对象,如果
出现
错误,则抛出错误
缺少必需的属性
属性(必需和非必需)的类型错误。
npm i typescript-
unknown
-parser
创建一个具有预期类型属性的类。 通过从typescript-
unknown
-parser导入的
Unknown
Parser对其进行扩展,并将该类作为通用类型参数传递。
用未知数据和类名调用super(data, 'MyClass')
使用
protected函数设置所有属性: getPrimitive, getIsoDate, getArray, ge
tS
tringAsEnumKey,
的元素更改为display:block为何不可以和其他属性修改一样触发动画呢?
这是因为display属性刚开始是none,所以还没有创建,改为block之后需要等待js渲染队列更新
但是transition属性在一开始就有了,所以transform改变元素的时候并没有触发动画
解决方法:让元素获取dom.offsetHeight,触发js渲染队列更新,让元素先展示出来。
<!DOCTYPE html>
<div v-for="(item,index) in titles"
:key="index"
:ref="el=>{ if(item===selected){element=el}} "
@click="toggle(item)">{{item}}</div>
用ref 引用html标签时这么写会在buile时报错
src/lib/Tabs.
vue
:5:90 - error
TS
2322: Type 'Element | ComponentPu
<view v-for="(item,index) in displayList" :key="index" @click="jumpPage(item.fileUrl)">
<view>{{item.name}}</view>
</view>
找到原因如下:因为我在定义displayList时,第