← 作品展
CASE 02 / 05
l2d-widget · 离线
Offline · 库与模型全部进仓库
全本地组件
方案一 · 库与模型都进仓库
库、模型、贴图全部进仓库,内网可跑。
组件未能挂载,通常是 lib/ 或 models/shizuku 没有完整拷贝、或页面不是通过本地 HTTP 打开。
可查看本页下方的「实现要点」与「注意」。
01
实现要点
Implementation- 双 chunk 结构:
L2Dwidget.min.js是 webpack 主入口,负责定义webpackJsonpL2Dwidget;L2Dwidget.0.min.js是 vendor chunk,必须后加载。 - 初始化位置:调用必须放在 body 末尾。放在 head 会因
document.body尚不存在而报appendChildof null。 - 模型显式化:不传
model.jsonPath时组件会去远程 unpkg 取默认模型,本地化时必须写明本地路径。 - 资源完整性:模型目录需整套拷贝,moc、贴图、mtn、exp、physics、pose、sound 缺一不可。
02
关键代码
Code
JS
L2Dwidget.init({
model: {
jsonPath: 'models/shizuku/shizuku.model.json', scale: 1
},
display: {
superSample: 2, width: 220, height: 400,
position: 'right', hOffset: -10, vOffset: -20
},
mobile: { show: true, scale: 0.7, motion: true },
react: { opacityDefault: 1, opacityOnHover: 1 }
});
03
注意
Caveats- 这是本仓库里唯一完全离线的 l2d-widget 示例,库与模型都放在
08-l2d-widget/目录内,整目录拷贝即可独立运行。 - 若换用其他模型,确认其格式为 Cubism 2.1,moc3 模型不能直接交给 l2d-widget。