Appearance
ESADFrontPlayerManager
属性
adChannel
功能描述
广告播放的渠道。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
adChannel | String | null | 否 | 广告播放的渠道 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:ad-channel="xxxx"/>
注意
无
adDebug
功能描述
广告播放的渠道。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
adDebug | Boolean | false | 否 | 是否开启广告调试模式 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:ad-debug="false"/>
注意
无
adTestServer
功能描述
是否开启广告测试环境。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
adTestServer | Boolean | false | 否 | 是否开启广告测试环境 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:ad-test-server="false"/>
注意
无
onADPlayerProgressChangedCallback
功能描述
播放进度回调方法。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
onADPlayerProgressChangedCallback | Function | null | 否 | 回调播放进度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:on-ad-player-progress-changed-callback="onADPlayerProgressChanged"/>
<script>
export default {
methods: {
onADPlayerProgressChanged(progress) {
}
},
}
</script>
注意
无
onADPlayerDurationChangedCallback
功能描述
播放进度回调方法。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
onADPlayerDurationChangedCallback | Function | null | 否 | 回调视频时长 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:on-ad-player-duration-changed-callback="onADPlayerDurationChanged"/>
<script>
export default {
methods: {
onADPlayerDurationChanged(duration) {
}
},
}
</script>
注意
无
adPlayerViewList
功能描述
广告界面列表。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
adPlayerViewList | Array | null | 否 | 广告界面列表 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:ad-player-view-list="adPlayerViewList"/>
注意
无
playSeriesLoop
功能描述
循环播放分集列表。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playSeriesLoop | Boolean | true | 否 | 循环播放分集列表 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-series-loop="true"
ref="es_ad_front_player_manager"/>
注意
无
playSeriesPositiveSequence
功能描述
是否正序播放视频分集。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playSeriesPositiveSequence | Boolean | null | 否 | 是否正序播放视频分集 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-series-positive-sequence="true"
ref="es_ad_front_player_manager"/>
注意
无
playSeriesAuto
功能描述
调用playSeriesAuto
方法后是否自动调用playSeries方法进行播放分集。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playSeriesAuto | Boolean | true | 否 | 调用playVideo方法后是否自动调用playSeries方法进行播放分集 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-series-auto="true"
ref="es_ad_front_player_manager"/>
注意
无
playSeriesAutoNext
功能描述
播放分集完毕或者出错是否继续播放下一个分集。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playSeriesAutoNext | Boolean | true | 否 | 播放分集完毕或者出错是否继续播放下一个分集 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-series-auto-next="true"
ref="es_ad_front_player_manager"/>
注意
无
playUrlsAuto
功能描述
调用playSeries方法后是否自动调用start方法进行播放。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playUrlsAuto | Boolean | true | 否 | 调用playSeries方法后是否自动调用start方法进行播放 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-urls-auto="true"
ref="es_ad_front_player_manager"/>
注意
无
playUrlsAutoNext
功能描述
是否自动播放下一个地址。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playUrlsAutoNext | Boolean | null | 否 | 是否自动播放下一个地址 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-urls-auto-next="true"
ref="es_ad_front_player_manager"/>
注意
无
playUrlsPositiveSequence
功能描述
是否正序播放分集地址列表。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playUrlsPositiveSequence | Boolean | true | 否 | 是否正序播放分集地址列表 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
:play-urls-positive-sequence="true"
ref="es_ad_front_player_manager"/>
注意
无
initPlayerWindowType
功能描述
播放器窗口类型。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
initPlayerWindowType | Number | 1 | 否 | 播放器窗口类型 |
播放器窗口类型:
点击查看源码
js
export const ES_PLAYER_WINDOW_TYPE_SMALL = 1;//
export const ES_PLAYER_WINDOW_TYPE_FULL = 2;//
export const ES_PLAYER_WINDOW_TYPE_FLOAT = 3;//
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:init-player-window-type="2"/>
注意
无
smallWindowWidth
功能描述
ES_PLAYER_WINDOW_TYPE_SMALL类型播放窗口的宽度。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
smallWindowWidth | Number | 976 | 否 | 播放器的宽度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:small-window-width="976"/>
注意
无
smallWindowHeight
功能描述
ES_PLAYER_WINDOW_TYPE_SMALL类型播放窗口的高度。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
smallWindowHeight | Number | 557 | 否 | 播放器的高度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:small-window-height="976"/>
注意
无
fullWindowWidth
功能描述
ES_PLAYER_WINDOW_TYPE_FULL类型播放窗口的宽度。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
fullWindowWidth | Number | 1920 | 否 | 播放器的宽度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:full-window-width="1920"/>
注意
无
fullWindowHeight
功能描述
ES_PLAYER_WINDOW_TYPE_FULL类型播放窗口的高度。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
fullWindowHeight | Number | 1080 | 否 | 播放器的高度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:full-window-height="1080"/>
注意
无
floatWindowWidth
功能描述
ES_PLAYER_WINDOW_TYPE_FLOAT类型播放窗口的宽度。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
floatWindowWidth | Number | 400 | 否 | 播放器的宽度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:float-window-width="400"/>
注意
无
floatWindowHeight
功能描述
ES_PLAYER_WINDOW_TYPE_FLOAT类型播放窗口的高度。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
floatWindowHeight | Number | 230 | 否 | 播放器的高度 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
:float-window-height="230"/>
注意
无
方法
playVideo(Object playInfo)
功能描述
播放。
参数
Object playInfo
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
seriesIndex | Number | null | 是 | 播放分集列表的index |
seriesList | Array | null | 是 | 播放分集列表 |
示例代码
点击查看源码
js
let videoSeries = {
id: 0,//自定义分集id,唯一id
urls: {//分集地址对象
urlIndex: 0,//要播放的地址的index
urlList: [{//地址列表
url: 'http://qcloudcdn-moss.cp47.ott.cibntv.net/project/tvq/qsj_video/2021/12/07/3800609_9c0bae6b6d5df502ffa28f9396a2316e.mp4',
}],
},
type: ES_PLAY_SERIES_TYPE_REAL_URL,
}
let playInfo = {
seriesIndex: 0,
seriesList: [videoSeries,]
}
this.$refs.es_ad_front_player_manager.playVideo(playInfo);
注意
无
playSeriesById(String seriesId)
功能描述
播放指定id的分集。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
seriesId | String | null | 是 | 分集的id |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.playSeriesById('Z200105');
注意
无
playSeriesByIndex(Number seriesIndex)
功能描述
播放指定index的分集。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
seriesIndex | Number | null | 是 | 分集的index |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.playSeriesByIndex(10);
注意
无
getVideoSeriesList()
功能描述
获取PlayerManager播放分集列表。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
VideoSeriesList | Array | null | 是 | 播放分集列表 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.getVideoSeriesList();
注意
无
getVideoSeriesByIndex(Number index)
功能描述
根据index获取播放列表中指定index的分集。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
series | Object | null | 是 | 播放分集 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.getVideoSeriesByIndex(3);
注意
无
getPlayingSeriesIndex()
功能描述
获取正在播放的分集的index。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
index | Number | null | 是 | 播放分集index |
示例代码
点击查看源码
js
let index = this.$refs.es_ad_front_player_manager.getPlayingSeriesIndex();
注意
无
canPlayNextSeries()
功能描述
是否可以播放下一集。
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Boolean | null | 是 | 是否可以播放下一集 |
示例代码
点击查看源码
js
let can = this.$refs.es_ad_front_player_manager.canPlayNextSeries();
注意
无
playNextSeries()
功能描述
播放下一个分集。
参数
无 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.playNextSeries();
注意
无
canPlayPreviousSeries()
功能描述
是否可以播放上一集。
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Boolean | null | 是 | 是否可以播放上一集 |
示例代码
点击查看源码
js
let can = this.$refs.es_ad_front_player_manager.canPlayPreviousSeries();
注意
无
playPreviousSeries()
功能描述
播放上一个分集。
参数
无 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.playPreviousSeries();
注意
无
start()
功能描述
开始播放。
参数
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.start();
注意
无
pause()
功能描述
暂停播放。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.pause();
注意
无
resume()
功能描述
继续播放。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.resume();
注意
无
stop()
功能描述
停止播放。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.stop();
注意
无
release()
功能描述
回收播放器。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.release();
注意
无
getCurrentPosition()
功能描述
获取当前的播放进度。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.getCurrentPosition();
注意
通过onPlayerProgressChangedCallback回调方法返回当前的播放进。
getDuration()
功能描述
获取当前的播放时长。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.getDuration();
注意
通过onPlayerDurationChangedCallback回调方法返回播放时长。
getPlayerWindowType()
功能描述
获取窗口模式。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playerWindowType | Number | null | 是 | 窗口模式 |
playerWindowType:
点击查看源码
js
export const ES_PLAYER_WINDOW_TYPE_SMALL = 1;//
export const ES_PLAYER_WINDOW_TYPE_FULL = 2;//
export const ES_PLAYER_WINDOW_TYPE_FLOAT = 3;//
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.getPlayerWindowType();
注意
无
changeToFloatWindow()
功能描述
切换成浮动窗口模式。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.changeToFloatWindow();
注意
无
changeToSmallWindow()
功能描述
切换成小窗口模式。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.changeToSmallWindow();
注意
无
changeToFullWindow()
功能描述
切换成全屏窗口模式。
参数
无
返回值
无
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.changeToFullWindow();
注意
无
isPlayerWindowTypeFull()
功能描述
是否是全屏窗口模式。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Boolean | null | 是 | 是否是全屏窗口模式 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.isPlayerWindowTypeFull();
注意
无
isPlayerWindowTypeSmall()
功能描述
是否是小窗口模式。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Boolean | null | 是 | 是否是小窗口模式 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.isPlayerWindowTypeSmall();
注意
无
isPlayerWindowTypeFloat()
功能描述
是否是浮动窗口模式。
参数
无
返回值
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Boolean | null | 是 | 是否是浮动窗口模式 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.isPlayerWindowTypeFloat();
注意
无
setStopped(Boolean stopped)
功能描述
设置播放器停止。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
stopped | Boolean | 是 | 设置播放器是否停止 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.setStopped(true);
注意
无
setEnabled(Boolean enabled)
功能描述
设置播放器是否可用。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
enabled | Boolean | 是 | 设置播放器是否可用 |
示例代码
点击查看源码
js
this.$refs.es_ad_front_player_manager.setEnabled(true);
注意
无
回调事件
onVideoPlayerInitialized(playerType)
功能描述
播放器初始化完成。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
playerType | Number | 是 | 播放器类型 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onVideoPlayerInitialized="onVideoPlayerInitialized"/>
<script>
export default {
methods: {
onVideoPlayerInitialized(playerType) {
},
},
}
</script>
注意
无
onPlayVideo(Object playInfo)
功能描述
播放分集合集。
参数
Object playInfo
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
seriesIndex | Number | null | 是 | 播放分集列表index |
seriesList | Array | null | 是 | 播放分集列表 Object series数组 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayVideo="onPlayVideo"/>
<script>
export default {
methods: {
onPlayVideo(playInfo) {
},
},
}
</script>
注意
无
onPlaySeries(Object series, Number seriesIndex)
功能描述
播放分集。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
series | Object | null | 是 | 分集对象 |
seriesIndex | Number | null | 是 | 分集index |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlaySeries="onVideoPlaySeries"/>
<script>
export default {
methods: {
onVideoPlaySeries(series, seriesIndex) {
},
},
}
</script>
注意
无
onPlayUrls(playUrlsInfo)
功能描述
播放地址信息回调。
参数
Object playUrlsInfo
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
urlIndex | Number | null | 是 | 播放地址列表index |
urlList | Array | null | 是 | 播放地址列表 Object playUrl数组 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayUrls="onVideoPlayUrls"/>
<script>
export default {
methods: {
onVideoPlayUrls(playUrlsInfo) {
},
},
}
</script>
注意
无
onPlayUrl(playUrl)
功能描述
播放地址信息回调。
参数
Object playUrl
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
url | String | null | 是 | 视频地址 |
aspectRatio | Number | null | 否 | 画面比例 |
leftVolume | Number | null | 否 | 左声道音量 |
rightVolume | Number | null | 否 | 右声道音量 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayUrl="onVideoPlayUrl"/>
<script>
export default {
methods: {
onVideoPlayUrl(playUrl) {
},
},
}
</script>
注意
无
onPlayerPreparing()
功能描述
播放preparing状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerPreparing="onVideoPlayerPreparing"/>
<script>
export default {
methods: {
onVideoPlayerPreparing() {
},
},
}
</script>
注意
无
onPlayerPrepared()
功能描述
播放prepared状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerPrepared="onVideoPlayerPrepared"/>
<script>
export default {
methods: {
onVideoPlayerPrepared() {
},
},
}
</script>
注意
无
onPlayerPlaying()
功能描述
播放playing状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerPlaying="onVideoPlayerPlaying"/>
<script>
export default {
methods: {
onVideoPlayerPlaying() {
},
},
}
</script>
注意
无
onPlayerPaused()
功能描述
播放paused状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerPaused="onVideoPlayerPaused"/>
<script>
export default {
methods: {
onVideoPlayerPaused() {
},
},
}
</script>
注意
无
onPlayerResumed()
功能描述
播放resume状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerResumed="onVideoPlayerResumed"/>
<script>
export default {
methods: {
onVideoPlayerResumed() {
},
},
}
</script>
注意
无
onPlayerStopped()
功能描述
播放stop状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerStopped="onVideoPlayerStopped"/>
<script>
export default {
methods: {
onVideoPlayerStopped() {
},
},
}
</script>
注意
无
onPlayerCompleted()
功能描述
播放complete状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerCompleted="onVideoPlayerCompleted"/>
<script>
export default {
methods: {
onVideoPlayerCompleted() {
},
},
}
</script>
注意
无
onPlayerBufferStart()
功能描述
播放缓冲开始状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerBufferStart="onVideoPlayerBufferStart"/>
<script>
export default {
methods: {
onVideoPlayerBufferStart() {
},
},
}
</script>
注意
无
onPlayerBufferEnd()
功能描述
播放缓冲结束状态。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerBufferEnd="onVideoPlayerBufferEnd"/>
<script>
export default {
methods: {
onVideoPlayerBufferEnd() {
},
},
}
</script>
注意
无
onPlayerSizeChanged()
功能描述
播放器尺寸改变。
参数
无
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerSizeChanged="onVideoPlayerSizeChanged"/>
<script>
export default {
methods: {
onVideoPlayerSizeChanged() {
},
},
}
</script>
注意
无
onNoUrlCanPlay(Boolean next)
功能描述
没有播放地址可以播放。
参数
Boolean next
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
next | Boolean | null | 是 | 向后播放还是向前播放没有播放地址 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onNoUrlCanPlay="onVideoNoUrlCanPlay"/>
<script>
export default {
methods: {
onVideoNoUrlCanPlay(next) {
},
},
}
</script>
注意
无
onPlayerError(Number errorCode, String errorMessage)
功能描述
播放错误。
参数
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
errorCode | Number | null | 是 | 播放错误码 |
errorMessage | Number | null | 是 | 播放错误信息 |
示例代码
点击查看源码
js
<es-ad-front-player-manager
ref="es_ad_front_player_manager"
@onPlayerError="onVideoPlayerError"/>
<script>
export default {
methods: {
onVideoPlayerError(errorCode, errorMessage) {
},
},
}
</script>
注意
无