这个问题还没解决!

用Vue.js 重构项目的时候,引入three.js和其他相关的东西的时候会出现上面的警告。今天就说一下这个解决办法,但是我觉得这个方法不一定适用所有的项目。

一、引入THREE

首先用 npm 安装了 three, 然后再项目里面引入了。如下代码所示。

import * as THREE from 'three'

这个时候还需要引入其他three.js 的方法。比如 STLLoader.js,因为有些文件 npm 官方库里面没有或者版本不同,所以我直接从官网的例子里面直接拷贝文件到项目直接引用。因为这些函数直接在THREE对象上添加的方法,所以我猜测直接引入就可以添加到THREE上面,所以我就直接用 import ''路径/STLLoader.js" 引入文件,这个时候就报错了,如下图。

因为全局变量没有THREE,所以接下来就开始怎么处理THREE变量全局化。

二、THREE变量全局化

THREE全局化有两种方法,

1是在webpack 里面添加全局变量。

  plugins: [new webpack.ProvidePlugin({'THREE': require.resolve('three')})]

这种方法确实可以但是在我项目里面会出现一个问题。就是 CSS3DObject,方法找不到。

2 直接在 window全局变量上挂载 THREE,具体原理不再这里说了。

window.THREE = THREE

THREE变量全局化解决了,开始引入其他函数。

三、warnings 的出现和解决

因为这些函数是在不同的 .vue组件里面用,所以分开来引入这些函数了。分开来引入的的时候,还是有写THREE变量未定义,所以我就又在STLLoader.js 引入 THREE。

import * as {THREE} from 'three'
THREE.STLLoader = function ( manager ) {this.manager = ( manager !== undefined ) ? manager : THREE.DefaultLoadingManager;};

这个时候就出现了标题的问题了。最后发现是加载顺序的问题。

那么这些警告也确实够烦人的,程序员不要说自己不行,所以要解决!!

这个时候发现是引入文件的顺序出了问题,就是 STLLoader 先加载了, THREE 后加载。这个时候把 THREE的加载放在App.vue里面,然后把其他文件里面的 import * as {THREE} from 'three都删除了,就会返现没有警告了。

warnings (imported as 'THREE') was not found in 'three'相关推荐

  1. Python:numpy实现生成随机数,忽略warnings

    ''' 作者:Dust ''' # 生成随机数:numpy下的random import numpy as npy import warnings warnings.filterwarnings(&q ...

  2. warnings.warn(f“Pass {args_msg} as keyword args. From version

    warnings.warn(f"Pass {args_msg} as keyword args. From version FutureWarning: Pass threshold=18 ...

  3. warnings.filterwarnings(ignore)

    参考 https://blog.csdn.net/tefuirnever/article/details/94122670 在python中运行代码经常会遇到的情况是--代码可以正常运行但是会提示警告 ...

  4. golang 编译运行出错:imported and not used: log

    [问题] 使用代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 package main import (     "f ...

  5. cannot import name 'imresize'. The package prm under namespace prm could not be imported

    cannot import name 'imresize'. The package "prm" under namespace "prm" could not ...

  6. python脚本忽略MySQLdb的warnings

    一.前言 这是在执行python脚本的时候遇到的bug,疯狂的报warnings警告,一坨一坨的,看着实在不雅观,so,还是解决一下比较好.本篇主要讲述的是错误的发现以及如何忽略warnings警告. ...

  7. python运行不了、显示警告_Python中偶尔遇到的细节疑问(二):UnicodeDecodeError,警告与忽略警告warnings...

    1. 使用base64解码时,出现:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xed in position 21: invalid c ...

  8. TimesTen Warnings and Errors - TT0400 to TT9999 [IDnbsp (

    TimesTen Warnings and Errors - TT0400 to TT9999 [ID&nbsp ( 转载于:https://www.cnblogs.com/jing1617/ ...

  9. VTK:开发Warnings实例

    VTK:开发Warnings实例 VTK:开发Warnings实例 代码 Warnings.cxx CMakeLists.txt VTK:开发Warnings实例 代码 Warnings.cxx #i ...

最新文章

  1. 在CentOS 6.9 x86_64的OpenResty 1.13.6.1上使用LuaRocks示例
  2. MySQL排错工具perror
  3. session存储在redis/memcache/mysql
  4. 42.存储器管理应具有的功能?
  5. POJ - 2186 Popular Cows(强连通缩点)
  6. spring中bean的作用域属性single与prototype的区别
  7. Python进阶(四)Python中的异常
  8. 执行计划之CONCATENATION
  9. 解决android Studio 安装完运行提示failed to find build tools revision 24.0.2
  10. hdu2084数塔----DP入门
  11. vc12对应的php版本,vc和vs的区别
  12. Flex布局应用---导航栏实现
  13. echarts中的自定义tooltip浮层展示
  14. python支持多种编程范式吗_理解真格量化的Python编程范式
  15. swiper控制页面切换
  16. UI设计师都在用的4款UI设计软件
  17. 如何快速将MKV格式转换成MP4高清电影格式?
  18. 苹果服务器国内维护,苹果中国iCloud服务器数据开始转移,这些问题你要注意!...
  19. 第十五节 使用NETCONN 接口编程
  20. [Android]天气App 1

热门文章

  1. python桌面开发吐血_想用java写个桌面小demo,就布局都差点写吐血了,学艺不精...
  2. html写用户导入,用户基本信息录入.html
  3. Java语言所有异常类均继承自_Java将运行错误分为两类:(__)和(__), 其对应的类均派生自(__)类;...
  4. 数组重复次数最多的元素递归_使用递归计算链接列表中元素的出现次数
  5. md5不是对称密码算法_密码学中的消息摘要算法5(MD5)
  6. python map函数的作用_Python的map函数
  7. deepinu盘制作工具_u盘启动盘制作工具怎么制作 u盘启动盘制作工具制作方法【详细步骤】...
  8. oracle v¥bh,【oracle笔记2】约束
  9. 小白学算法:买卖股票的最佳时机!
  10. 面经 | 我是如何拿到阿里offer的?附面试题+视频