Dojo

In dojo4, @dojo/framework/core, is moved out some things?


#1

last night, me tryed dojo4.
In @dojo/framework/core, I can’t find lang, request, and a lot other things。
Is these things moved out?


#2

The short answer is yes, we removed features that ES2015 and/or TypeScript provide already, rather than maintaining proprietary alternatives. See https://github.com/dojo/framework/issues/52 and https://github.com/dojo/framework/pull/53 for the full details.

If you use the migration tool to from from version 3 to 4, it will include a copy of any dependencies that have been removed in case you need to rely on them and/or need time to change the usage of those features to leverage the standards.

If there are features that you feel strongly were a big mistake to remove, please open an issue in @dojo/framework and we can discuss in more detail!

Thanks,
-Dylan


#3

thanks.
I user axios instead of dojo request now。
there is another question。I user “dojo create app”, and then found the typescript version still is 2.6.2。


#4

The minimum for Dojo is TS 2.6, but it works fine with newer versions. You may need to update your dependencies of either your Dojo packages or TS itself.


#5

In dojo4, I can’t build with newer ts version。
In dojo3, ts2.8 is ok.
now , when I use ts 3.0.1:
dojo build -w -s -m dev
⠧ building
/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:80832
for (var _a = 0, _b = sourceFileOrBundle.sourceFiles; _a < _b.length; _a++) {
^
TypeError: Cannot read property ‘length’ of undefined
at emitShebangIfNeeded (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:80832:79)
at Object.writeBundle (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:78834:13)
at printSourceFileOrBundle (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:78694:25)
at emitJsFileOrBundle (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:78631:13)
at emitSourceFileOrBundle (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:78588:13)
at forEachEmittedFile (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:78497:30)
at Object.emitFiles (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:78578:9)
at emitWorker (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:83228:33)
at /home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:83188:66
at runWithCancellationToken (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:83280:24)
at Object.emit (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:83188:20)
at Object.getFileEmitOutput (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:84574:34)
at Object.getEmitOutput (/home/xiechj/study/test5/node_modules/typescript/lib/typescript.js:111949:23)
at /home/xiechj/study/test5/node_modules/ts-loader/dist/after-compile.js:122:38
at Array.forEach ()
at provideDeclarationFilesToWebpack (/home/xiechj/study/test5/node_modules/ts-loader/dist/after-compile.js:121:10)
at Compiler. (/home/xiechj/study/test5/node_modules/ts-loader/dist/after-compile.js:23:9)
at next (/home/xiechj/study/test5/node_modules/tapable/lib/Tapable.js:204:14)
at Compiler. (/home/xiechj/study/test5/node_modules/webpack/lib/CachePlugin.js:78:5)
at Compiler.applyPluginsAsyncSeries (/home/xiechj/study/test5/node_modules/tapable/lib/Tapable.js:206:13)
at compilation.seal.err (/home/xiechj/study/test5/node_modules/webpack/lib/Compiler.js:511:11)
at Compilation.applyPluginsAsyncSeries (/home/xiechj/study/test5/node_modules/tapable/lib/Tapable.js:195:46)


#6

Could you provide more detail in what you’re doing? I’ve just verified that what gets generated by the @dojo/cli tooling is building fine with TS 3.0.1.


#7

environment:
nodejs v8.12.0
debian stretch x86_64 GNU/Linux

what me are doing:
dojo create app -n test4
cd test4
npm install typescript@3.0.1 --save-dev
dojo build -w -s -m dev

Thinks


#8

We found an issue which was causing the build to fail. This should be fixed in https://github.com/dojo/webpack-contrib/pull/85 (which makes TS a dev dependency rather than a dependency)… please try this change out, or wait for the next minor release, and let us know if this resolves this build issue for you. Thanks!


#9

Yes,that‘s works!!!
thanks


#10

use axios instead:
npm install axios --save
import axois from ‘axois’;