莹宝思密达 2022-09-09 14:48 采纳率: 55.6%
浏览 24

webpack不打包的js文件,如何运行js文件

问题遇到的现象和发生背景
         通过axios.get('/static/static.js')获取static.js文件,获取到的static.js是一个字符串。如何获取static.js中的变量。
问题相关代码,请勿粘贴截图

```javascript
// static.js文件
var  test = '这是一个test.js的js文件,该如何引入呢?'
var testObj={
    testRes:'坚持就是胜利!'
}

```javascript
// 获取js
async function getTestJs(){

    var res=await axios.get('static/static.js')
    if (res.status === 200) {
       console.log('res!!!!!!!!!!',res)
       eval(res.data)
       console.log('test',test)
    }
}
getTestJs()


运行结果及报错内容

img

我想要达到的结果

直接eval()会报错。

img


我想要获取 static.js中 testObj的值。要如何获取

  • 写回答

1条回答 默认 最新

  • 撸空投的菜鸟 2022-09-09 15:21
    关注

    试试这样

    //static.js文件
    var  test = '这是一个test.js的js文件,该如何引入呢?'
    var testObj={
        testRes:'坚持就是胜利!'
    }
    return {
      test,
      testObj
    }
    
    
    async function getTestJs(){
     
        var res=await axios.get('static/static.js')
        if (res.status === 200) {
           console.log('res!!!!!!!!!!',res)
           var { test, testObj } = new Function(res)()
        }
    }
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 9月9日