允许在vscode上自动导入我的React库

时间:2019-08-18 16:07:25

标签: javascript reactjs npm visual-studio-code

我正在尝试为React创建一个组件库,并使用webpack和babel在npm上发布以编译到Es5。

几乎所有内容都可以正常工作,但是由于某种原因,使用此lib的项目无法自动导入其组件

我在github上有一个使用我使用的设置的项目:

https://github.com/dattebayorob/react-loading

//webpack.config.js
https://github.com/dattebayorob/react-loading/blob/master/webpack.config.js
//.babelrc
https://github.com/dattebayorob/react-loading/blob/master/.babelrc
//package.json
https://github.com/dattebayorob/react-loading/blob/master/package.json

我希望在输入时使用'CTRL + space'从我的库中导入组件

现在,我可以使用import { Component } from 'my-react-lib'

从lib手动导入了

3 个答案:

答案 0 :(得分:0)

do_work上尝试:

CREATE PROCEDURE [dbo].[USP_InsertDataFromXML]
    (@Ticker VARCHAR(50),
     @PCName VARCHAR(50),
     @LiconfigXML XML,
     @10QKXML XML,
     @CustomFormula XML,
     @Comments XML,
     @ToggleData XML,
     @BrokerHistoryOptionXML XML,
     @BrokerGridXML XML,
     @PrevEarningXML XML,
     @BrokerBogey NVARCHAR(MAX),
     @PeriodListXML XML,
     @existHist VARCHAR(10),
     @existHistFY VARCHAR(10),
     @lblEarning VARCHAR(10))
AS
BEGIN
    SET @t1 = GETDATE();

    DELETE FROM [tblTenQKBogey] WHERE PCName = @PCName

    IF (@10QKXML IS NOT NULL) 
    BEGIN
        INSERT INTO [tblTenQKBogey] (Section, LineItem, XFundCode, PCName)
            SELECT
                TenQK.detail.value('(Section/text())[1]','VARCHAR(MAX)') AS Section, 
                TenQK.detail.value('(LineItem/text())[1]','VARCHAR(MAX)') AS LineItem, 
                TenQK.detail.value('(xFundCode/text())[1]','VARCHAR(MAX)') AS xFundCode,
                @PCName AS PCName
            FROM  
                @10QKXML.nodes('/Bogeylist/BrokerData') AS TenQK(detail) 
        END

        SET @t2 = GETDATE();

        SELECT @timetaken = CAST(DATEDIFF(millisecond, @t1, @t2) AS VARCHAR(20))

        SELECT @DataCount = COUNT(*) FROM [tblTenQKBogey]

        INSERT INTO tblQcLog (Action, Info, TimeTaken, PCName, TableDataCount, Ticker)
        VALUES ('INSERT INTO [tblTenQKBogey] table',
                'dumping data from xml',
                @timetaken, @PCName, @DataCount, @Ticker)
    END
END

答案 1 :(得分:0)

package.json中,您拥有"main": "./index.d.ts",但这不是有效的JS文件,因为它不包含实际代码,仅包含类型定义。

在库中,通常需要一个src/index.js文件来导入/导出所有组件,并在package.json中将构建工件添加为主要文件:"main": "dist/index.js"

此外,不要忘记在files: ["dist"]中明确指定package.json属性,这样在安装软件包时不会下载src文件夹。

答案 2 :(得分:0)

有时,在VSCode中使用Typescript时,必须在命令面板中运行Typescript: Restart TS Server命令,才能在创建新文件后自动导入。这是一个错误。