Ecmascript 6 从'导入*作为x和{y,z};文件';

Ecmascript 6 从'导入*作为x和{y,z};文件';,ecmascript-6,es6-modules,Ecmascript 6,Es6 Modules,简而言之,如何组合这两行代码 import * as php from './php'; import {str_replace, trim} from './php'; 我找不到有效的语法。我试过这样的方法 import {str_replace, trim}, * as php from './php'; 注意:这是ECMAScript 2015(第6版,ECMA-262)。实际上,您不能在ES6中合并这些内容。只能将命名空间导入或命名导入与默认导入一起使用,但不能相互使用 解决方案是要

简而言之,如何组合这两行代码

import * as php from './php';
import {str_replace, trim} from './php';
我找不到有效的语法。我试过这样的方法

import {str_replace, trim}, * as php from './php';

注意:这是ECMAScript 2015(第6版,ECMA-262)。

实际上,您不能在ES6中合并这些内容。只能将命名空间导入或命名导入与默认导入一起使用,但不能相互使用


解决方案是要么保留这两行,要么只在代码中的任何地方使用
php.str_replace
php.trim
,并删除命名的导入。

在ES6中确实不能将它们结合起来。只能将命名空间导入或命名导入与默认导入一起使用,但不能相互使用


解决方案是要么保留这两行,要么在代码中的任何地方使用
php.str_replace
php.trim
,并删除命名的导入。

如果不需要两个
import
语句,可以使用
import*作为php from./php';const{str_replace,trim}=php。思维良好@FelixKling。这破坏了eslint(
no replicate imports
),但这应该以一种非常干净的方式解决它;const{str_replace,trim}=php。思维良好@FelixKling。这破坏了eslint(
无重复导入
),但这应该以一种非常干净的方式解决它。