vue展示dicom文件医疗系统的实现代码


Posted in Javascript onAugust 27, 2018

环境:vue、webpack、constone

资料来源及文件:https://github.com/GleasonBian/CornerstoneVueWADO

需要下载的模块:cornerstone-core、dicom-parser

需要下载的js文件:压缩文件可以忽略

vue展示dicom文件医疗系统的实现代码

显示组件:showDicom.vue

<template>
 <div class="dicom" ref="dicomImage"></div>
</template>
<script>
import * as cornerstone from "cornerstone-core";
import * as dicomParser from "dicom-parser";
// 不建议 npm 安装 cornerstoneWADOImageLoader 如果你做了 会很头疼
let cornerstoneWADOImageLoader = require('../../../static/dist/cornerstoneWADOImageLoader.js')
// import {cornerstoneWADOImageLoader} from "../../../static/dist/cornerstoneWADOImageLoader.js";
//指定要注册加载程序的基石实例
cornerstoneWADOImageLoader.external.cornerstone = cornerstone;
//配置 webWorker (必须配置)
//注意这里的路径问题 如果路径不对 cornerstoneWADOImageLoaderWebWorker 会报错 index.html Uncaught SyntaxError: Unexpected token <
var config = {
 webWorkerPath: "/static/dist/cornerstoneWADOImageLoaderWebWorker.js",
 taskConfiguration: {
 decodeTask: {
  codecsPath: "/static/dist/cornerstoneWADOImageLoaderCodecs.js"
 }
 }
};
cornerstoneWADOImageLoader.webWorkerManager.initialize(config);
export default {
 name: 'previewDicom',
 props: {
  imageId: {
   type: String,
   required: true
  }
 },
 data () {
  return {
  }
 },
 // watch:{
 // imageId(newValue,oldValue){
 //  var url = `wadouri:${this.imageId}`;
 //  this.loadAndViewImage(url);
 // } 
 // },
 mounted() {
  var url = `wadouri:${this.imageId}`;
  this.loadAndViewImage(url);
 },
 methods: {
  loadAndViewImage(imageId) {
   //找到 要放置 Dicom Image 的元素
   // var element = document.getElementById("dicomImage");
   console.log(1334);
   let element = this.$refs.dicomImage
   cornerstone.enable(element)
   // cornerstone.loadAndCacheImage 函数 负责加载图形 需要 图像地址 imageId
   cornerstone.loadAndCacheImage(imageId).then(
    function(image) {
     var viewport = cornerstone.getDefaultViewportForImage(element, image);
     cornerstone.displayImage(element, image, viewport);
    },
    function(err) {
     console.error(err)
    }
   );
  } 
 }
}
</script>
<style scoped>
.dicom{
 height: 100%;
}
</style>

引入组件,注册,使用:

<div class="son" v-for="(item,key) in dicomList" :key="key" @click="imgClcik(item.url)">
 <preview-dicom :imageId="item.url"></preview-dicom>
 </div>
dicomList:[
  {
   url:'http://127.0.0.1/testDICOM/CTStudy/3.719KB.DCM',
  },
  {
   url:'http://127.0.0.1/testDICOM/CTStudy/3.719KB.DCM',
  },
  {
   url:'http://127.0.0.1/testDICOM/CTStudy/test.dcm',
  },
  {
   url:'http://127.0.0.1/testDICOM/CTStudy/1.5191KB.DCM',
  },
  {
   url:'http://127.0.0.1/testDICOM/CTStudy/1.5191KB.DCM',
  },
  {
   url:'http://127.0.0.1/testDICOM/CTStudy/1.5191KB.DCM',
  }
],

显示结果:

vue展示dicom文件医疗系统的实现代码

总结

以上所述是小编给大家介绍的vue展示dicom文件医疗系统的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery focus(fn),blur(fn)方法实例代码
Dec 16 Javascript
50款非常棒的 jQuery 插件分享
Mar 29 Javascript
用RadioButten或CheckBox实现div的显示与隐藏
Sep 21 Javascript
javascript计算星座属相(十二生肖属相)示例代码
Jan 09 Javascript
js获得网页背景色和字体色的方法
Mar 21 Javascript
jQuery实现单击按钮遮罩弹出对话框(仿天猫的删除对话框)
Apr 10 Javascript
jquery实现的美女拼图游戏实例
May 04 Javascript
layui select获取自定义属性方法
Aug 15 Javascript
Vue 处理表单input单行文本框的实例代码
May 09 Javascript
微信小程序云开发 搭建一个管理小程序
May 17 Javascript
前端插件之Bootstrap Dual Listbox使用教程
Jul 23 Javascript
通过实例解析JavaScript常用排序算法
Sep 02 Javascript
vue中子组件的methods中获取到props中的值方法
Aug 27 #Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
Aug 27 #Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
Aug 27 #Javascript
vue.js中toast用法及使用toast弹框的实例代码
Aug 27 #Javascript
对Vue- 动态元素属性及v-bind和v-model的区别详解
Aug 27 #Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
Aug 27 #Javascript
vue监听input标签的value值方法
Aug 27 #Javascript
You might like
使用字符串函数输出整数化的PHP版本号
2006/10/09 PHP
PHP实现手机归属地查询API接口实现代码
2012/08/27 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
destoon出现验证码不显示时的紧急处理方法
2014/08/22 PHP
php判断对象是派生自哪个类的方法
2015/06/20 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
2016/06/21 PHP
event.srcElement 用法笔记e.target
2009/12/18 Javascript
基于JQuery的一个简单的鼠标跟随提示效果
2010/09/23 Javascript
JS实现侧悬浮浮动实例代码
2013/11/29 Javascript
浅析jQuery EasyUI中的tree使用指南
2014/12/18 Javascript
JavaScript中Number.NEGATIVE_INFINITY值的使用详解
2015/06/05 Javascript
微信小程序 配置顶部导航条标题颜色的实现方法
2017/09/20 Javascript
基于jQuery.i18n实现web前端的国际化
2018/05/04 jQuery
学习RxJS之JavaScript框架Cycle.js
2019/06/17 Javascript
如何测量vue应用运行时的性能
2019/06/21 Javascript
layui加载表格,绑定新增,编辑删除,查看按钮事件的例子
2019/09/06 Javascript
原生JS实现留言板功能
2020/02/08 Javascript
js实现鼠标点击飘爱心效果
2020/08/19 Javascript
[01:38]女王驾到——至宝魔廷新尊技能&特效展示
2020/06/16 DOTA
简单谈谈Python中函数的可变参数
2016/09/02 Python
Python用imghdr模块识别图片格式实例解析
2018/01/11 Python
python中的二维列表实例详解
2018/06/19 Python
python使用Plotly绘图工具绘制柱状图
2019/04/01 Python
python os.fork() 循环输出方法
2019/08/08 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
2020/05/15 Python
Python如何使用27行代码绘制星星图
2020/07/20 Python
澳大利亚牛仔裤商店:Just Jeans
2016/10/13 全球购物
新西兰最大的在线设计师眼镜店:SmartBuyGlasses新西兰
2017/10/20 全球购物
美国销售第一的智能手机和平板电脑保护壳:OtterBox
2017/12/21 全球购物
什么是Smarty变量操作符?如何使用Smarty变量操作符
2014/07/18 面试题
比较基础的php面试题及答案-填空题
2014/04/26 面试题
小学教师事迹材料
2014/01/13 职场文书
市场营销专业自荐书
2014/06/10 职场文书
读后感作文评语
2014/12/25 职场文书
springboot应用服务启动事件的监听实现
2022/04/06 Java/Android
Python  序列化反序列化和异常处理的问题小结
2022/12/24 Python