读取
此软件包是可用的助手 家庭暴力替换为 将脚本添加到您的网站上, 您可以使用此软件包 :
- 使用ES6进出口语法.
- 获取 Typescript 定义 .
使用这个软件包仍会继续从CDN下载核心DVM, 添加到您的网站上.
如果你用这个包, 你不能这样 手动添加 dvm.js 脚本在你的html.
安装
npm install --save @3ddv/dvm
怎样用
此套件输出以下函数:
loadModule: 等值为DVM.loadModule。 。 。 .allowFeatureDetection数字 :true默认.false如果您想要完全禁用特性检测。 你必须 在装入任何模块前拨打它。 检查更多信息 这里。 。 。 .useModernBuild数字 :false默认.true如果您想要直接加载 ES2020+ 模块而不检查任何 特性检测。 在装入任何模块之前,必须先拨打它. 检查更多信息 这里。 。 。 .setDVMVersion: 您可以指定您要下载 DVM 的命名空间 . 默认将从stable。它必须使用之前 首个loadModule电话. 你应该默认地离开它 除非我们有别的规定. 这相当于 包含特定的脚本。 。 。 .setDefaultModuleVersion: 您可以为特定模块指定默认版本分支。 默认情况下, 所有模块 用途stable树枝.setDefaultEnvironment: 切换DVM从中下载的CDN环境. 默认为"pro"。 。 。 .getBuiltinDVMVersion: 返回内建版本的 DVM .getBuiltinModuleVersion: 返回一个模块的内建版本.getDefaultModuleVersion: 返回模块当前配置的默认分支.
loadModule 也接受以下覆盖全局默认的逐个调用选项:
version——分行(如:."stable", (中文(简体) ),"latest")或数字版本(例如."2.5.6"为了这个电话.feature_detection: false——仅针对此呼叫而禁用特性检测.modern: true——要求ES2020+搭建本调用单元.polyfills- 装入多填料块。 默认为true为ES5建造和falseeS2020+建筑;设置 明确取消.plugins——要预装模块的插件名称阵列. 每个模块都有自己的插件;参见模块的 文档.client_id3D数字地点为你提供了一个.
import { loadModule, setDVMVersion, setDefaultModuleVersion } from "@3ddv/dvm";
setDVMVersion("stable"); // stable is already set by default
setDefaultModuleVersion("map_viewer", "stable");
loadModule("map_viewer", { container: "container-id" })
.then((viewer) => {
return viewer.loadMap({ venue_id: "venue" });
})
.then(() => {
console.log("map loaded");
});
特征检测和现代建设
从v2.8开始, @3ddv/dvm 不再执行任何特性检测本身,所以它永远不会尝试
改为 eval 或运行页面中的内置代码。 它从我们的CDN下载的DVM库确实执行
特性默认检测,但该工作被隔离在一个单独的文件中——如果被一个
浏览器扩展或CSP,其余装入器仍然运行.
特性检测可以完全关闭. 打电话 allowFeatureDetection(false) 在任何模块之前
跳动 :
import { loadModule, allowFeatureDetection } from "@3ddv/dvm";
allowFeatureDetection(false);
loadModule("3d_viewer", { container: "container-id" });
每个电话也可以禁用:
loadModule("3d_viewer", { container: "container-id", feature_detection: false });
当特性检测被禁用时,ES5架构默认会被下载. 你可以强迫
ES2020+ 与 useModernBuild(true) 或逐个呼叫 modern: true 旗帜 :
import { loadModule, useModernBuild } from "@3ddv/dvm";
useModernBuild(true);
// or, per call:
loadModule("3d_viewer", { container: "container-id", modern: true });
内建版本
您可以指定此软件包发布的具体版本 :
import { loadModule, setDVMVersion, setDefaultModuleVersion } from '@3ddv/dvm';
setDVMVersion('builtin');
setDefaultModuleVersion('map_viewer', 'builtin');
setDefaultModuleVersion('3d_viewer', 'builtin');
loadModule('map_viewer', { container: 'container-id' })
.then((viewer) => {
...
});
特定版本
您可以指定一个模块的特定数字版本.
import { loadModule, setDVMVersion, setDefaultModuleVersion } from '@3ddv/dvm';
setDefaultModuleVersion('map_viewer', '2.5.6');
loadModule('map_viewer', { container: 'container-id' })
.then((viewer) => {
...
});