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的动态表格插件
Mar 28 Javascript
jquery ajax实现下拉框三级无刷新联动,且保存保持选中值状态
Oct 29 Javascript
原生js仿jq判断当前浏览器是否为ie,精确到ie6~8
Aug 30 Javascript
解析javascript中鼠标滚轮事件
May 26 Javascript
判断访客终端类型集锦
Jun 05 Javascript
jQuery实现最简单的切换图效果【可兼容IE6、火狐、谷歌、opera等】
Sep 04 Javascript
走进AngularJs之过滤器(filter)详解
Feb 17 Javascript
javascript实现非常简单的小数取整功能示例
Jun 13 Javascript
利用C/C++编写node.js原生模块的方法教程
Jul 07 Javascript
微信小程序中上传图片并进行压缩的实现代码
Aug 28 Javascript
Windows下Node爬虫神器Puppeteer安装记
Jan 09 Javascript
JavaScript设计模式--桥梁模式引入操作实例分析
May 23 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基于curl主动推送最新内容给百度收录的方法
2016/10/14 PHP
php将print_r处理后的数据还原为原始数组的解决方法
2016/11/02 PHP
动态样式类封装JS代码
2009/09/02 Javascript
javascript让setInteval里的函数参数中的this指向特定的对象
2010/01/31 Javascript
给ListBox添加双击事件示例代码
2013/12/02 Javascript
jQuery动态创建html元素的常用方法汇总
2014/09/05 Javascript
JavaScript中判断整数的多种方法总结
2014/11/08 Javascript
jQuery实现图片左右滚动特效
2020/04/20 Javascript
基于Vuejs框架实现翻页组件
2020/06/29 Javascript
如何实现json数据可视化详解
2016/11/24 Javascript
JS实现的图片预览插件与用法示例【不上传图片】
2016/11/25 Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
2017/04/07 Javascript
JS处理数据四舍五入(tofixed与round的区别详解)
2017/10/26 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
node.js中fs文件系统模块的使用方法实例详解
2020/02/13 Javascript
[19:15]DK战队纪录片
2014/09/02 DOTA
[35:55]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.11
2020/12/13 DOTA
python获取beautifulphoto随机某图片代码实例
2013/12/18 Python
Python os模块学习笔记
2015/06/21 Python
Python的collections模块中namedtuple结构使用示例
2016/07/07 Python
Python用Pillow(PIL)进行简单的图像操作方法
2017/07/07 Python
Python编程实现使用线性回归预测数据
2017/12/07 Python
Python使用正则表达式获取网页中所需要的信息
2018/01/29 Python
对python 判断数字是否小于0的方法详解
2019/01/26 Python
pycharm设置鼠标悬停查看方法设置
2019/07/29 Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
2020/02/25 Python
python argparse模块通过后台传递参数实例
2020/04/20 Python
基于python实现简单C/S模式代码实例
2020/09/14 Python
python实现scrapy爬虫每天定时抓取数据的示例代码
2021/01/27 Python
美国电力供应商店/电气批发商:USESI
2018/10/12 全球购物
List, Set, Map是否继承自Collection接口?
2016/05/16 面试题
C#里面如何判断一个Object是否是某种类型(如Boolean)?
2016/02/10 面试题
计算机专业毕业生自我鉴定
2014/01/16 职场文书
销售简历自我评价
2014/01/24 职场文书
环卫工作个人总结
2015/03/04 职场文书
导游词之山东孔庙
2019/11/04 职场文书