标签: javascript-import

ES6导入相当于require()而没有导出

通过使用require(./filename)我可以包含并执行文件名内的代码,而不在文件名本身内定义任何导出.

ES6使用的等价物是什么import

谢谢

javascript require node.js ecmascript-6 javascript-import

39
推荐指数
1
解决办法
2万
查看次数

导入 jQuery 验证

我想将“jquery-validation”导入到 ES6 类中

import $ from 'jquery'
import 'jquery-validation'
Run Code Online (Sandbox Code Playgroud)

但是当我在同一个文件中的任何地方做

$(...).validate({...})
Run Code Online (Sandbox Code Playgroud)

我收到错误

Uncaught TypeError: $(...).validate is not a function
Run Code Online (Sandbox Code Playgroud)

javascript jquery javascript-import

7
推荐指数
1
解决办法
6926
查看次数

使用导入的Javascript函数ES6访问主文件中的全局变量

我正在使用Vue.js但只是简单的JS文件而不是vue文件,我正在将一个组件导入我的主要,app.js如下所示:

import autoPosts from './components/autoPosts.js';
Run Code Online (Sandbox Code Playgroud)

它导入它很好,但我试图访问这些全局变量.在人们因使用全局变量而摧毁我之前,你能告诉我这是否可行.

const apiRoot    = location.origin + '/wp-json/wp/v2/';
const acfApiRoot = location.origin + '/wp-json/acf/v3/';

import autoPosts from './components/autoPosts.js';
Run Code Online (Sandbox Code Playgroud)

它不读取apiRootacfApiRoot在该组件内,是否在变量之前或之后包含它.

它的唯一工作方式是我在组件文件中声明变量 autoPosts.js

javascript ecmascript-6 javascript-import vuejs2

6
推荐指数
2
解决办法
3333
查看次数

为什么节点使用不需要导入?

我正在学习node.js,想知道为什么它使用require语法而不是importReact使用的语法。

const Validator = require("validator");

VS

import Validator from "validator";

我相信import是es6,但我不认为这可以解释为什么未在节点中使用它。

node.js ecmascript-6 javascript-import

6
推荐指数
1
解决办法
4092
查看次数

在 TypeScript 中使用 SweetAlert2,找不到模块“sweetalert2/dist/sweetalert2.js”的声明文件

我正在将我的一个项目迁移到 TypeScript,在那个项目SweetAlert2 中库。

导入 SweetAlert2(JS 和 CSS)的默认方式是

import Swal from 'sweetalert2'
Run Code Online (Sandbox Code Playgroud)

这适用于 TypeScript,因为库中有类型:https : //github.com/sweetalert2/sweetalert2/blob/master/sweetalert2.d.ts

但在我的项目中,导入的方式是这样的:

import Swal from 'sweetalert2/dist/sweetalert2.js'
Run Code Online (Sandbox Code Playgroud)

这仅用于 JS 导入,没有样式。使用这种类型的导入,我收到 TS 错误:

Could not find a declaration file for module 'sweetalert2/dist/sweetalert2.js'. 

ts(7016)
Run Code Online (Sandbox Code Playgroud)

我试图复制sweetalert2/sweetalert2.d.tssweetalert2/dist/sweetalert2.d.ts,但遇到另一个错误:

File 'node_modules/sweetalert2/dist/sweetalert2.d.ts' is not a module. 

ts(2306)
Run Code Online (Sandbox Code Playgroud)

这里发生了什么,为什么 TS 抱怨dist/sweetalert2.d.ts不是模块?

javascript typescript javascript-import typescript-typings sweetalert2

6
推荐指数
2
解决办法
3600
查看次数

在angular4中导入jquery

为了在angualr4项目中导入jquery,我执行以下操作:

npm install --save jquery
npm install --save-dev @types/jquery
Run Code Online (Sandbox Code Playgroud)

在app.component.ts中

import $ from 'jquery';
or 
import * as $ from 'jquery';
Run Code Online (Sandbox Code Playgroud)

当运行"ng serve"时,我遇到了这些错误

ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (47,40): ',' expected.

ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (2370,40): ',' expected.
.....
.....
.....
ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (4311,85): ';' expected.

ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (4311,92): Expression expected.

ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (4455,1): Declaration or statement expected.

ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (30,45): Generic type 'JQueryStatic<TElement, HTMLElement>' requires 2 type argument(s).
.....
.....
.....
ERROR in C:/jquery-angular/jqueryintegration/node_modules/@types/jquery/index.d.ts (4475,33): Generic type 'PlainObject<T, …
Run Code Online (Sandbox Code Playgroud)

typescript javascript-import angular

5
推荐指数
2
解决办法
2万
查看次数

动态导入webpackChunkName

我是webpack的新手,我想知道是否有一种方法可以在导入中添加动态块名称和路径。我尝试这样做,但这是错误的

import(/* webpackChunkName: "${file_name}"*/ './modules/${js_path}')

要么

import(/* webpackChunkName: "'+file_name+'"*/ './modules/'+js_path+'')

仅供参考,我不能将[request]用作webpack chunck名称,因为它包括文件夹名称。

我尝试搜索类似的问题,但未成功。请帮忙。

TIA :)

javascript webpack javascript-import es6-modules

5
推荐指数
0
解决办法
436
查看次数

我们什么时候在javascript导入中使用'{}'?

我正在学习Javascript导入,当我们从另一个JS文件导入项目(函数,对象,变量)时使用花括号时我还没理解.

import Search from './models/Search';
import * as searchView from './views/searchView';
import { elements, renderLoader } from './views/base'
//elements is an object, renderLoader is a function
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 javascript-import

5
推荐指数
2
解决办法
1101
查看次数

如何在 Web Worker 中导入另一个 JS 文件?

我有一个 WebWorker,我想在其中使用另一个现有 JavaScript 文件中的函数。我尝试了不同的方法来导入 JS 文件,但到目前为止都没有奏效。有问题的文件位于另一个目录中,相关路径为“../pkg/benchmark.js”。

有没有人知道如何做到这一点?

我尝试了以下方法:

方法一:

import * as myFile from '../pkg/benchmark.js';
Run Code Online (Sandbox Code Playgroud)

这给出了错误:

Uncaught SyntaxError: Unexpected token *
Run Code Online (Sandbox Code Playgroud)

方法二:

import { myFunc1, myFunc2 } from '../pkg/benchmark.js';
Run Code Online (Sandbox Code Playgroud)

给出错误:

Uncaught SyntaxError: Unexpected token {
Run Code Online (Sandbox Code Playgroud)

方法 3: 使用 importScripts()

importScripts('../pkg/benchmark.js');
Run Code Online (Sandbox Code Playgroud)

给出错误:

worker_wasm.js:6 Uncaught DOMException: Failed to execute importScripts' on 'WorkerGlobalScope': The script at http://localhost:8080/pkg/benchmark.js' failed to load. 
Run Code Online (Sandbox Code Playgroud)

方法四: 使用动态导入:

import('../pkg/benchmark.js')
    .catch(e => console.error(e));
Run Code Online (Sandbox Code Playgroud)

给出错误:

TypeError: Failed to fetch dynamically imported module: http://localhost:8080/pkg/benchmark.js
Run Code Online (Sandbox Code Playgroud)

由于我使用的是 npm,所以应该提到在 package.json 中我已经定义了依赖项

"dependencies": {
    "benchmark": "file:../pkg" …
Run Code Online (Sandbox Code Playgroud)

javascript web-worker javascript-import

5
推荐指数
0
解决办法
963
查看次数

模拟导入的 Lazy React 组件

这是我的懒惰组件:

const LazyBones = React.lazy(() => import('@graveyard/Bones')
  .then(module => ({default: module.BonesComponent}))
export default LazyBones
Run Code Online (Sandbox Code Playgroud)

我是这样导入的:

import Bones from './LazyBones'

export default () => (
<Suspense fallback={<p>Loading bones</p>}>
  <Bones />
</Suspense>
)
Run Code Online (Sandbox Code Playgroud)

在我的测试中,我有这样的事情:

import * as LazyBones from './LazyBones';

describe('<BoneYard />', function() {
  let Bones;
  let wrapper;
  beforeEach(function() {
    Bones = sinon.stub(LazyBones, 'default');
    Bones.returns(() => (<div />));
    wrapper = shallow(<BoneYard />);
  });
  afterEach(function() {
    Bones.restore();
  });

  it('renders bones', function() {
    console.log(wrapper)
    expect(wrapper.exists(Bones)).to.equal(true);
  })

})
Run Code Online (Sandbox Code Playgroud)

我期望的是测试通过,并且 console.log 打印出来:

<Suspense fallback={{...}}>
  <Bones /> …
Run Code Online (Sandbox Code Playgroud)

javascript sinon reactjs javascript-import react-suspense

5
推荐指数
1
解决办法
4566
查看次数